]> git.ipfire.org Git - thirdparty/glibc.git/commitdiff
DCIGETTEXT: Do not make copy of localename
authorFlorian Weimer <fweimer@redhat.com>
Mon, 19 Jun 2017 12:44:33 +0000 (14:44 +0200)
committerFlorian Weimer <fweimer@redhat.com>
Mon, 19 Jun 2017 21:11:57 +0000 (23:11 +0200)
ChangeLog
intl/dcigettext.c

index 5c4815eb431852ca437d5dfcb7a70b86c049eb7b..d4aac40eaba66ad1a19fa767e485b73cb30aedba 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2017-06-19  Florian Weimer  <fweimer@redhat.com>
+
+       * intl/dcigettext.c (DCIGETTEXT): Do not make copy of localename.
+       It cannot change while __libc_setlocale_lock is acquired.
+
 2017-06-19  Florian Weimer  <fweimer@redhat.com>
 
        * elf/rtld.c (audit_list_string): New variable.
index 3843b7cbdfac4e335ad194434ae34924a2acb4d0..d97746cae5e3cd401bca9160e0f2130226bb46ea 100644 (file)
@@ -551,7 +551,7 @@ DCIGETTEXT (const char *domainname, const char *msgid1, const char *msgid2,
 #ifdef HAVE_PER_THREAD_LOCALE
 # ifndef IN_LIBGLOCALE
 #  ifdef _LIBC
-  localename = strdupa (__current_locale_name (category));
+  localename = __current_locale_name (category);
 #  else
   categoryname = category_to_name (category);
 #   define CATEGORYNAME_INITIALIZED