From af79253677ad98d6dfe11ea315ee9947d86586d3 Mon Sep 17 00:00:00 2001 From: Mark Wielaard Date: Thu, 19 Jun 2025 21:07:22 +0200 Subject: bzip2.c: Check argc >= 1 && argv[0] != NULL This should never happen, but if there is no, or a NULL argv[0] then use a hard coded string "bzip2" when calling copyFileName to define progNameReally. https://sourceware.org/bugzilla/show_bug.cgi?id=33046 --- bzip2.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/bzip2.c b/bzip2.c index 9ef7536..0c4445c 100644 --- a/bzip2.c +++ b/bzip2.c @@ -1825,7 +1825,11 @@ IntNative main ( IntNative argc, Char *argv[] ) copyFileName ( inName, (Char*)"(none)" ); copyFileName ( outName, (Char*)"(none)" ); - copyFileName ( progNameReally, argv[0] ); + if (argc >= 1 && argv[0] != NULL) + copyFileName ( progNameReally, argv[0] ); + else + copyFileName ( progNameReally, (Char*)"bzip2" ); + progName = &progNameReally[0]; for (tmp = &progNameReally[0]; *tmp != '\0'; tmp++) if (*tmp == PATH_SEP) progName = tmp + 1; -- cgit v1.2.3-55-g6feb