| Index: src/gpu/GrAutoLocaleSetter.h
|
| diff --git a/src/gpu/GrAutoLocaleSetter.h b/src/gpu/GrAutoLocaleSetter.h
|
| index 08196debf61ba30d9109add414e68253a732995f..6bfff0cd897b3b124f8c702a5f224d9c1aee6776 100644
|
| --- a/src/gpu/GrAutoLocaleSetter.h
|
| +++ b/src/gpu/GrAutoLocaleSetter.h
|
| @@ -22,6 +22,12 @@
|
| #include <xlocale.h>
|
| #endif
|
|
|
| +#if defined(SK_BUILD_FOR_ANDROID) || defined(__UCLIBC__) || defined(_NEWLIB_VERSION)
|
| +#define HAVE_LOCALE_T 0
|
| +#else
|
| +#define HAVE_LOCALE_T 1
|
| +#endif
|
| +
|
| /**
|
| * Helper class for ensuring that we don't use the wrong locale when building shaders. Android
|
| * doesn't support locale in the NDK, so this is a no-op there.
|
| @@ -38,7 +44,7 @@ public:
|
| } else {
|
| fShouldRestoreLocale = false;
|
| }
|
| -#elif !defined(SK_BUILD_FOR_ANDROID) && !defined(__UCLIBC__)
|
| +#elif HAVE_LOCALE_T
|
| fLocale = newlocale(LC_ALL, name, 0);
|
| if (fLocale) {
|
| fOldLocale = uselocale(fLocale);
|
| @@ -56,7 +62,7 @@ public:
|
| setlocale(LC_ALL, fOldLocale.c_str());
|
| }
|
| _configthreadlocale(fOldPerThreadLocale);
|
| -#elif !defined(SK_BUILD_FOR_ANDROID) && !defined(__UCLIBC__)
|
| +#elif HAVE_LOCALE_T
|
| if (fLocale) {
|
| uselocale(fOldLocale);
|
| freelocale(fLocale);
|
| @@ -69,11 +75,13 @@ private:
|
| int fOldPerThreadLocale;
|
| bool fShouldRestoreLocale;
|
| SkString fOldLocale;
|
| -#elif !defined(SK_BUILD_FOR_ANDROID) && !defined(__UCLIBC__)
|
| +#elif HAVE_LOCALE_T
|
| locale_t fOldLocale;
|
| locale_t fLocale;
|
| #endif
|
| };
|
|
|
| +#undef HAVE_LOCALE_T
|
| +
|
| #endif
|
|
|
|
|