summary refs log tree commit diff
path: root/locale/programs/ld-numeric.c
diff options
context:
space:
mode:
authorAndreas Schwab <schwab@suse.de>2013-11-11 18:09:18 +0100
committerAndreas Schwab <schwab@suse.de>2013-11-18 12:50:09 +0100
commita7931fcfba2a5007021f8d10fffa5f51651ad7b3 (patch)
tree95ee74831a1fcc8cad2b92cb26af5396837bf45e /locale/programs/ld-numeric.c
parent728dab0e13529ba8778e6ef07e2cc80eddf028b5 (diff)
downloadglibc-a7931fcfba2a5007021f8d10fffa5f51651ad7b3.tar.gz
glibc-a7931fcfba2a5007021f8d10fffa5f51651ad7b3.tar.xz
glibc-a7931fcfba2a5007021f8d10fffa5f51651ad7b3.zip
Properly handle unavailable elements in LC_MONETARY category
Diffstat (limited to 'locale/programs/ld-numeric.c')
-rw-r--r--locale/programs/ld-numeric.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/locale/programs/ld-numeric.c b/locale/programs/ld-numeric.c
index 093a04951e..f759947de4 100644
--- a/locale/programs/ld-numeric.c
+++ b/locale/programs/ld-numeric.c
@@ -305,6 +305,9 @@ numeric_read (struct linereader *ldfile, struct localedef_t *result,
 	      if (now->tok != tok_eol)
 		goto err_label;
 
+	      /* A single -1 means no grouping.  */
+	      if (act == 1 && grouping[0] == '\177')
+		act--;
 	      grouping[act++] = '\0';
 
 	      numeric->grouping = xrealloc (grouping, act);