about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog3
-rw-r--r--intl/localealias.c4
-rw-r--r--locale/findlocale.c3
3 files changed, 7 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index ba46369024..bf091611c0 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,8 @@
 2011-11-08  Ulrich Drepper  <drepper@gmail.com>
 
+	* locale/findlocale.c (_nl_find_locale): Use __strcasecmp_l.
+	* intl/localealias.c (strcasecmp): Define using __strcasecmp_l.
+
 	* sysdeps/i386/i686/multiarch/strcmp-ssse3.S: Remove unnecessary
 	instructions.
 
diff --git a/intl/localealias.c b/intl/localealias.c
index 735107abd3..6f5fa12495 100644
--- a/intl/localealias.c
+++ b/intl/localealias.c
@@ -1,5 +1,5 @@
 /* Handle aliases for locale names.
-   Copyright (C) 1995-2002, 2003, 2005 Free Software Foundation, Inc.
+   Copyright (C) 1995-2002, 2003, 2005, 2011 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -64,7 +64,7 @@ char *alloca ();
 /* Rename the non ANSI C functions.  This is required by the standard
    because some ANSI C functions will require linking with this object
    file and the name space must not be polluted.  */
-# define strcasecmp __strcasecmp
+# define strcasecmp(s1, s2) __strcasecmp_l (s1, s2, _nl_C_locobj_ptr)
 
 # ifndef mempcpy
 #  define mempcpy __mempcpy
diff --git a/locale/findlocale.c b/locale/findlocale.c
index 2fec9a70d5..6c888f00c9 100644
--- a/locale/findlocale.c
+++ b/locale/findlocale.c
@@ -258,7 +258,8 @@ _nl_find_locale (const char *locale_path, size_t locale_path_len,
     }
 
   /* Determine whether the user wants transliteration or not.  */
-  if (modifier != NULL && __strcasecmp (modifier, "TRANSLIT") == 0)
+  if (modifier != NULL
+      && __strcasecmp_l (modifier, "TRANSLIT", _nl_C_locobj_ptr) == 0)
     ((struct __locale_data *) locale_file->data)->use_translit = 1;
 
   /* Increment the usage count.  */