Fix a crash or random memory leak when reseting saved environment variable in test_servermodmanager.cpp

This commit is contained in:
Loic Blot 2018-03-16 19:34:41 +01:00
parent 478b785bc8
commit e800684ead
No known key found for this signature in database
GPG Key ID: EFAA458E8C153987

@ -71,11 +71,15 @@ void TestServerModManager::runTests(IGameDef *gamedef)
#ifdef WIN32 #ifdef WIN32
{ {
std::string subgame_path("MINETEST_SUBGAME_PATH="); std::string subgame_path("MINETEST_SUBGAME_PATH=");
subgame_path.append(saved_env_mt_subgame_path); if (saved_env_mt_subgame_path)
subgame_path.append(saved_env_mt_subgame_path);
_putenv(subgame_path.c_str()); _putenv(subgame_path.c_str());
} }
#else #else
setenv("MINETEST_SUBGAME_PATH", saved_env_mt_subgame_path, 1); if (saved_env_mt_subgame_path)
setenv("MINETEST_SUBGAME_PATH", saved_env_mt_subgame_path, 1);
else
unsetenv("MINETEST_SUBGAME_PATH");
#endif #endif
} }