X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Flibgame%2Fsystem.c;h=e3fbe001184e63468954f372cf5e14d380d8c771;hb=d31107293214cf22c06b58465923e29f3a64e73b;hp=1206c9ad391ccc6633a706bd7f5c8013978fbd2a;hpb=098ef036131fbf9cdcd77d1b985abae78df7cb3c;p=rocksndiamonds.git diff --git a/src/libgame/system.c b/src/libgame/system.c index 1206c9ad..e3fbe001 100644 --- a/src/libgame/system.c +++ b/src/libgame/system.c @@ -75,8 +75,23 @@ void InitProgramInfo(char *argv0, char *cookie_prefix, char *filename_prefix, int program_version) { - program.command_basename = - (strrchr(argv0, '/') ? strrchr(argv0, '/') + 1 : argv0); + char *argv0_copy = getStringCopy(argv0); + char *argv0_copy_last_slash = strrchr(argv0_copy, '/'); + + if (argv0_copy_last_slash != NULL) + { + program.command_basename = argv0_copy_last_slash + 1; + program.command_basepath = argv0_copy; + *argv0_copy_last_slash = '\0'; + } + else + { + program.command_basename = argv0_copy; + program.command_basepath = "."; + } + + printf("::: command_basepath == '%s'\n", program.command_basepath); + printf("::: command_basename == '%s'\n", program.command_basename); program.userdata_directory = userdata_directory; program.program_title = program_title;