diff --git a/uppsrc/Core/Ini.cpp b/uppsrc/Core/Ini.cpp index 8c8330f33..ba295eb04 100644 --- a/uppsrc/Core/Ini.cpp +++ b/uppsrc/Core/Ini.cpp @@ -83,10 +83,22 @@ String GetIniFile() return *sIniFile ? sIniFile : ~ConfigFile("q.ini"); } +static VectorMap& sIniKeys() +{ + static VectorMap key; + return key; +} + +VectorMap GetIniKeys() +{ + Mutex::Lock __(sMtx); + return VectorMap(sIniKeys(), 0); +} + String GetIniKey(const char *id, const String& def) { ASSERT_(IsMainRunning(), "GetIniKey is allowed only after APP_MAIN has started"); Mutex::Lock __(sMtx); - static VectorMap key; + VectorMap& key = sIniKeys(); static int version; if(version != ini_version__) { version = ini_version__; diff --git a/uppsrc/Core/Util.h b/uppsrc/Core/Util.h index a1132e4f9..25564db2d 100644 --- a/uppsrc/Core/Util.h +++ b/uppsrc/Core/Util.h @@ -30,6 +30,8 @@ String GetIniFile(); String GetIniKey(const char *id, const String& def); String GetIniKey(const char *id); +VectorMap GetIniKeys(); + #ifdef flagSO bool IniChanged__(int version); #else