Mercurial > illumos > illumos-gate
changeset 13145:83213fd85699
6977206 fix for 6735446 dumps core if argv[0] == NULL
author | Roger A. Faulkner <Roger.Faulkner@Oracle.COM> |
---|---|
date | Mon, 16 Aug 2010 18:05:48 -0700 |
parents | 9615cdbf7b70 |
children | 8315ff49e22e |
files | usr/src/lib/libc/port/gen/err.c |
diffstat | 1 files changed, 4 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/usr/src/lib/libc/port/gen/err.c Mon Aug 16 17:01:32 2010 -0700 +++ b/usr/src/lib/libc/port/gen/err.c Mon Aug 16 18:05:48 2010 -0700 @@ -73,10 +73,11 @@ Dl_argsinfo_t args; const char *argv0; - if (dlinfo(RTLD_SELF, RTLD_DI_ARGSINFO, &args) < 0) + if (dlinfo(RTLD_SELF, RTLD_DI_ARGSINFO, &args) < 0 || + args.dla_argc <= 0 || + (argv0 = args.dla_argv[0]) == NULL) argv0 = "UNKNOWN"; - else - argv0 = args.dla_argv[0]; + setprogname(argv0); }