fix a undefined behaviour for std::string and nullptr access

This commit is contained in:
Andreas Volz 2023-03-01 09:31:03 +01:00
parent b2680af967
commit 036a8395bb

View file

@ -202,7 +202,11 @@ static void SetUserDataPath(char* data_path) {
}
strcat(data_path, "\\Stratagus\\");
#else
std::string appimage = std::string(getenv("APPIMAGE"));
char *appimage_ptr = getenv("APPIMAGE");
std::string appimage;
if (appimage_ptr != nullptr) {
appimage = std::string(appimage_ptr);
}
if (!appimage.empty() && fs::exists(fs::path(appimage))) {
if (fs::exists(fs::path(appimage + ".data"))) {
strcpy(data_path, (appimage + ".data/stratagus").c_str());