aboutsummaryrefslogtreecommitdiff
path: root/common
diff options
context:
space:
mode:
Diffstat (limited to 'common')
-rw-r--r--common/config-manager.cpp11
-rw-r--r--common/config-manager.h2
2 files changed, 12 insertions, 1 deletions
diff --git a/common/config-manager.cpp b/common/config-manager.cpp
index 299d3c817e..46881ecde3 100644
--- a/common/config-manager.cpp
+++ b/common/config-manager.cpp
@@ -86,6 +86,14 @@ ConfigManager::ConfigManager() {
#endif
#endif
+ switchFile(configFile);
+}
+
+void ConfigManager::switchFile(const String &filename) {
+ _globalDomains.clear();
+ _gameDomains.clear();
+ _transientDomain.clear();
+
// Ensure the global domain(s) are setup.
_globalDomains.addKey(kApplicationDomain);
#ifdef _WIN32_WCE
@@ -94,8 +102,9 @@ ConfigManager::ConfigManager() {
_globalDomains.addKey("smartfon-keys");
#endif
- _filename = configFile;
+ _filename = filename;
loadFile(_filename);
+ printf("Switched to configuration %s\n", _filename.c_str());
}
void ConfigManager::loadFile(const String &filename) {
diff --git a/common/config-manager.h b/common/config-manager.h
index ddc97b76ee..ee3159fb0a 100644
--- a/common/config-manager.h
+++ b/common/config-manager.h
@@ -61,6 +61,8 @@ public:
/** The transient (pseudo) domain. */
static const String kTransientDomain;
+ void switchFile(const String &filename);
+
bool hasKey(const String &key) const;
bool hasKey(const String &key, const String &dom) const;