config: don't crash when getenv HOME returns null (#398)

This commit is contained in:
Maximilian Seidler 2024-07-05 22:41:03 +02:00 committed by GitHub
parent 9737bf6484
commit 01bf48ed96
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 6 additions and 1 deletions

View File

@ -23,7 +23,12 @@ static std::string getConfigDir() {
if (xdgConfigHome && std::filesystem::path(xdgConfigHome).is_absolute()) if (xdgConfigHome && std::filesystem::path(xdgConfigHome).is_absolute())
return xdgConfigHome; return xdgConfigHome;
return getenv("HOME") + std::string("/.config"); static const char* home = getenv("HOME");
if (!home)
throw std::runtime_error("Neither HOME nor XDG_CONFIG_HOME is set in the environment. Cannot determine config directory.");
return home + std::string("/.config");
} }
static std::string getMainConfigPath() { static std::string getMainConfigPath() {