X-Git-Url: https://git.artsoft.org/?p=rocksndiamonds.git;a=blobdiff_plain;f=src%2Flibgame%2Fmisc.c;h=bd069f921a93ad629d1e61e1d0d3995672f59639;hp=4ffb51c707adb555962ba68876d13e685f369e74;hb=378017ef8970cd08f0aa9cc2855eb4233f5a23a6;hpb=cbcc8ab3705eb89b894125af886bf7a54b426820 diff --git a/src/libgame/misc.c b/src/libgame/misc.c index 4ffb51c7..bd069f92 100644 --- a/src/libgame/misc.c +++ b/src/libgame/misc.c @@ -709,11 +709,19 @@ static char *getProgramMainDataPath() char *main_data_path_old = main_data_path; // cut relative path to Mac OS X application binary directory from path - main_data_path_old[strlen(main_data_path_old) - - strlen(main_data_binary_subdir)] = '\0'; + main_data_path[strlen(main_data_path) - + strlen(main_data_binary_subdir)] = '\0'; + + // cut trailing path separator from path (but not if path is root directory) + if (strSuffix(main_data_path, "/") && !strEqual(main_data_path, "/")) + main_data_path[strlen(main_data_path) - 1] = '\0'; + + // replace empty path with current directory + if (strEqual(main_data_path, "")) + main_data_path = "."; // add relative path to Mac OS X application resources directory to path - main_data_path = getPath2(main_data_path_old, main_data_files_subdir); + main_data_path = getPath2(main_data_path, main_data_files_subdir); free(main_data_path_old); }