argp: Avoid crash if translator uses % characters in a translation.
authorGuillem Jover <guillem@hadrons.org>
Sat, 7 Jan 2012 00:42:41 +0000 (01:42 +0100)
committerBruno Haible <bruno@clisp.org>
Sat, 7 Jan 2012 00:42:41 +0000 (01:42 +0100)
* lib/argp-parse.c (argp_version_parser): Use a "%s" format string.
Reported by Mats Erik Andersson <gnu@gisladisker.se>.

ChangeLog
lib/argp-parse.c

index 5d88629..628cebf 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2012-01-06  Guillem Jover  <guillem@hadrons.org>  (tiny change)
+
+       argp: Avoid crash if translator uses % characters in a translation.
+       * lib/argp-parse.c (argp_version_parser): Use a "%s" format string.
+       Reported by Mats Erik Andersson <gnu@gisladisker.se>.
+
 2012-01-06  Paul Eggert  <eggert@cs.ucla.edu>
 
        doc: C11 and C++11 are now official
index 39b8336..09558b4 100644 (file)
@@ -154,8 +154,9 @@ argp_version_parser (int key, char *arg, struct argp_state *state)
       else if (argp_program_version)
         fprintf (state->out_stream, "%s\n", argp_program_version);
       else
-        __argp_error (state, dgettext (state->root_argp->argp_domain,
-                                       "(PROGRAM ERROR) No version known!?"));
+        __argp_error (state, "%s",
+                      dgettext (state->root_argp->argp_domain,
+                                "(PROGRAM ERROR) No version known!?"));
       if (! (state->flags & ARGP_NO_EXIT))
         exit (0);
       break;