From a1c20fb216d4392ee19b34dcee718d0dffe8873c Mon Sep 17 00:00:00 2001 From: Sergey Poznyakoff Date: Sun, 10 Sep 2006 11:49:28 +0000 Subject: [PATCH] (__argp_parse) [!_LIBC]: Make sure program_invocation_name and program_invocation_short_name are initialized. --- lib/argp-parse.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/lib/argp-parse.c b/lib/argp-parse.c index 0813afc82..a7de72902 100644 --- a/lib/argp-parse.c +++ b/lib/argp-parse.c @@ -877,6 +877,20 @@ __argp_parse (const struct argp *argp, int argc, char **argv, unsigned flags, to be parsed (which in some cases isn't actually an error). */ int arg_ebadkey = 0; +#ifndef _LIBC + if (!(flags & ARGP_PARSE_ARGV0)) + { +#ifdef HAVE_DECL_PROGRAM_INVOCATION_NAME + if (!program_invocation_name) + program_invocation_name = argv[0]; +#endif +#ifdef HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME + if (!program_invocation_short_name) + program_invocation_short_name = __argp_base_name (argv[0]); +#endif + } +#endif + if (! (flags & ARGP_NO_HELP)) /* Add our own options. */ { -- 2.11.0