From 1fc197e4048f663e5cb71e67627f8bafebb31df7 Mon Sep 17 00:00:00 2001 From: Project579 Date: Fri, 19 Aug 2022 15:55:02 +0200 Subject: [PATCH] Check std::getenv output before using it to construct a std::filesystem::path. --- apps/openmw/engine.cpp | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/apps/openmw/engine.cpp b/apps/openmw/engine.cpp index 163fb31ccd..c8ea05e15e 100644 --- a/apps/openmw/engine.cpp +++ b/apps/openmw/engine.cpp @@ -1031,12 +1031,18 @@ void OMW::Engine::go() prepareEngine(); - std::ofstream stats; #ifdef _WIN32 - if (const auto path = std::filesystem::path{_wgetenv(L"OPENMW_OSG_STATS_FILE")}; !path.empty()) + const auto* stats_file = _wgetenv(L"OPENMW_OSG_STATS_FILE"); #else - if (const auto path = std::filesystem::path{std::getenv("OPENMW_OSG_STATS_FILE")}; !path.empty()) + const auto* stats_file = std::getenv("OPENMW_OSG_STATS_FILE"); #endif + + std::filesystem::path path; + if (stats_file != nullptr) + path = stats_file; + + std::ofstream stats; + if (!path.empty()) { stats.open(path, std::ios_base::out); if (stats.is_open())