UI: Fix crash on macOS if no python path is set in configuration

Obvious fix guarding against calling the std::string constructor with
a NULL pointer.
This commit is contained in:
PatTheMav 2022-07-23 16:18:35 +02:00 committed by Matt Gajownik
parent 5ea10fec82
commit 1766f01b7a

View file

@ -653,15 +653,18 @@ extern "C" void InitScripts()
config_get_string(config, "Python", "Path" ARCH_NAME);
#ifdef __APPLE__
std::string _python_path(python_path);
std::size_t pos = _python_path.find("/Python.framework/Versions");
if (python_path && *python_path) {
std::string _python_path(python_path);
std::size_t pos =
_python_path.find("/Python.framework/Versions");
if (pos != std::string::npos) {
std::string _temp = _python_path.substr(0, pos);
config_set_string(config, "Python", "Path" ARCH_NAME,
_temp.c_str());
config_save(config);
python_path = _temp.c_str();
if (pos != std::string::npos) {
std::string _temp = _python_path.substr(0, pos);
config_set_string(config, "Python", "Path" ARCH_NAME,
_temp.c_str());
config_save(config);
python_path = _temp.c_str();
}
}
#endif