diff options
Diffstat (limited to 'gcc-4.9/libstdc++-v3/config/locale')
3 files changed, 33 insertions, 6 deletions
diff --git a/gcc-4.9/libstdc++-v3/config/locale/generic/c_locale.cc b/gcc-4.9/libstdc++-v3/config/locale/generic/c_locale.cc index 6ce044152..35ae2c921 100644 --- a/gcc-4.9/libstdc++-v3/config/locale/generic/c_locale.cc +++ b/gcc-4.9/libstdc++-v3/config/locale/generic/c_locale.cc @@ -52,13 +52,17 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION // Assumes __s formatted for "C" locale. char* __old = setlocale(LC_ALL, 0); char* __sav = 0; +#if defined (__ANDROID__) if (__old) { +#endif const size_t __len = strlen(__old) + 1; __sav = new char[__len]; memcpy(__sav, __old, __len); setlocale(LC_ALL, "C"); +#if defined (__ANDROID__) } +#endif char* __sanity; bool __overflow = false; @@ -121,13 +125,17 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION // Assumes __s formatted for "C" locale. char* __old = setlocale(LC_ALL, 0); char* __sav = 0; +#if defined (__ANDROID__) if (__old) { +#endif const size_t __len = strlen(__old) + 1; __sav = new char[__len]; memcpy(__sav, __old, __len); setlocale(LC_ALL, "C"); +#if defined (__ANDROID__) } +#endif char* __sanity; #if !__DBL_HAS_INFINITY__ @@ -170,13 +178,17 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION // Assumes __s formatted for "C" locale. char* __old = setlocale(LC_ALL, 0); char* __sav = 0; +#if defined (__ANDROID__) if (__old) { +#endif const size_t __len = strlen(__old) + 1; __sav = new char[__len]; memcpy(__sav, __old, __len); setlocale(LC_ALL, "C"); +#if defined (__ANDROID__) } +#endif #if !__LDBL_HAS_INFINITY__ errno = 0; diff --git a/gcc-4.9/libstdc++-v3/config/locale/generic/c_locale.h b/gcc-4.9/libstdc++-v3/config/locale/generic/c_locale.h index aedb13ffe..028c18570 100644 --- a/gcc-4.9/libstdc++-v3/config/locale/generic/c_locale.h +++ b/gcc-4.9/libstdc++-v3/config/locale/generic/c_locale.h @@ -59,13 +59,20 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION { char* __old = std::setlocale(LC_NUMERIC, 0); char* __sav = 0; - if (__old && __builtin_strcmp(__old, "C")) - { - const size_t __len = __builtin_strlen(__old) + 1; - __sav = new char[__len]; - __builtin_memcpy(__sav, __old, __len); - std::setlocale(LC_NUMERIC, "C"); +#if defined (__ANDROID__) + if (__old) + { +#endif + if (__builtin_strcmp(__old, "C")) + { + const size_t __len = __builtin_strlen(__old) + 1; + __sav = new char[__len]; + __builtin_memcpy(__sav, __old, __len); + std::setlocale(LC_NUMERIC, "C"); + } +#if defined (__ANDROID__) } +#endif __builtin_va_list __args; __builtin_va_start(__args, __fmt); diff --git a/gcc-4.9/libstdc++-v3/config/locale/generic/time_members.cc b/gcc-4.9/libstdc++-v3/config/locale/generic/time_members.cc index 2ed10f561..4b5f9fd5d 100644 --- a/gcc-4.9/libstdc++-v3/config/locale/generic/time_members.cc +++ b/gcc-4.9/libstdc++-v3/config/locale/generic/time_members.cc @@ -45,13 +45,17 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION { char* __old = setlocale(LC_ALL, 0); char* __sav = 0; +#if defined (__ANDROID__) if (__old) { +#endif const size_t __llen = strlen(__old) + 1; __sav = new char[__llen]; memcpy(__sav, __old, __llen); setlocale(LC_ALL, _M_name_timepunct); +#if defined (__ANDROID__) } +#endif const size_t __len = strftime(__s, __maxlen, __format, __tm); setlocale(LC_ALL, __sav); delete [] __sav; @@ -134,13 +138,17 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION { char* __old = setlocale(LC_ALL, 0); char* __sav = 0; +#if defined (__ANDROID__) if (__old) { +#endif const size_t __llen = strlen(__old) + 1; __sav = new char[__llen]; memcpy(__sav, __old, __llen); setlocale(LC_ALL, _M_name_timepunct); +#if defined (__ANDROID__) } +#endif const size_t __len = wcsftime(__s, __maxlen, __format, __tm); setlocale(LC_ALL, __sav); delete [] __sav; |