From bb4d5c2d5f20afff4f5382b33e9f530e3352c06f Mon Sep 17 00:00:00 2001 From: Werner Koch Date: Mon, 23 Jun 2014 10:22:32 +0200 Subject: [PATCH] intl: Fix for uClibc. * intl/localename.c (gl_locale_name_thread_unsafe): Take care of uCLIBC. -- Patch provided by "vriera". GnuPG-bug-id: 1642 --- intl/localename.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/intl/localename.c b/intl/localename.c index 89a9692bb..3f9d0b05f 100644 --- a/intl/localename.c +++ b/intl/localename.c @@ -2607,7 +2607,7 @@ gl_locale_name_thread_unsafe (int category, const char *categoryname) locale_t thread_locale = uselocale (NULL); if (thread_locale != LC_GLOBAL_LOCALE) { -# if __GLIBC__ >= 2 +# if __GLIBC__ >= 2 && !defined(__UCLIBC__) /* Work around an incorrect definition of the _NL_LOCALE_NAME macro in glibc < 2.12. See . */ @@ -2771,7 +2771,8 @@ gl_locale_name_thread (int category, const char *categoryname) However it does not specify the exact format. Neither do SUSV2 and ISO C 99. So we can use this feature only on selected systems (e.g. those using GNU C Library). */ -#if defined _LIBC || (defined __GLIBC__ && __GLIBC__ >= 2) +#if defined _LIBC || (defined __GLIBC__ && __GLIBC__ >= 2 \ + && (!defined __UCLIBC__ || defined __UCLIBC_HAS_LOCALE__)) # define HAVE_LOCALE_NULL #endif