From: Gisle Vanem Date: Wed, 7 Sep 2016 17:45:03 +0000 (-0700) Subject: getprogname: fix errors in previous change X-Git-Tag: v1.0~6651 X-Git-Url: https://gitweb.git.savannah.gnu.org/gitweb/?a=commitdiff_plain;h=f184a68f56a75848ce28f7584bc79dc592c5df35;p=gnulib.git getprogname: fix errors in previous change * lib/getprogname.c (getprogname) [HAVE_GETEXECNAME]: s/program_invocation_name/base/ [HAVE_DECL___ARGV]: Handle NULL __argv or __argv[0]. --- diff --git a/ChangeLog b/ChangeLog index e02ca0cea6..a4750b3ce4 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2016-09-07 Gisle Vanem + + getprogname: fix errors in previous change + * lib/getprogname.c (getprogname) [HAVE_GETEXECNAME]: + s/program_invocation_name/base/ + [HAVE_DECL___ARGV]: Handle NULL __argv or __argv[0]. + 2016-09-08 Pádraig Brady parse-datetime: restrict debug output to input string diff --git a/lib/getprogname.c b/lib/getprogname.c index 77aaf1838a..d70c2aa20d 100644 --- a/lib/getprogname.c +++ b/lib/getprogname.c @@ -34,12 +34,13 @@ getprogname (void) # elif HAVE_DECL_PROGRAM_INVOCATION_NAME return last_component (program_invocation_name); # elif HAVE_GETEXECNAME - const char *base = getexecname (); - if (!base) - base = "?"; - return last_component (program_invocation_name); + const char *p = getexecname (); + if (!p) + p = "?"; + return last_component (p); # elif HAVE_DECL___ARGV - return last_component (__argv); + const char *p = __argv && __argv[0] ? __argv[0] : "?"; + return last_component (p); # else # error "getprogname module not ported to this OS" # endif