about summary refs log tree commit diff
path: root/locale/programs/ld-monetary.c
diff options
context:
space:
mode:
Diffstat (limited to 'locale/programs/ld-monetary.c')
-rw-r--r--locale/programs/ld-monetary.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/locale/programs/ld-monetary.c b/locale/programs/ld-monetary.c
index ce83b18dba..cd30125a5a 100644
--- a/locale/programs/ld-monetary.c
+++ b/locale/programs/ld-monetary.c
@@ -364,9 +364,11 @@ field `%s' in category `%s' declared more than once"),			      \
 	  if (code->tok == tok_minus1)
 	    monetary->mon_grouping[monetary->mon_grouping_act++] = '\177';
 	  else if (code->val.num == 0)
-	    lr_error (lr, _("\
-values for field `%s' in category `%s' must not be zero"),
-		      "mon_grouping", "LC_MONETARY");
+	    /* A value of 0 disables grouping from here on but we must
+	       not store a NUL character since this terminates the
+	       string.  Use something different which must not be used
+	       otherwise.  */
+	    monetary->mon_grouping[monetary->mon_grouping_act++] = '\377';
 	  else if (code->val.num > 126)
 	    lr_error (lr, _("\
 values for field `%s' in category `%s' must be smaller than 127"),