diff options
Diffstat (limited to 'orkbasecxx')
-rw-r--r-- | orkbasecxx/ConfigManager.cpp | 8 | ||||
-rw-r--r-- | orkbasecxx/ConfigManager.h | 2 |
2 files changed, 7 insertions, 3 deletions
diff --git a/orkbasecxx/ConfigManager.cpp b/orkbasecxx/ConfigManager.cpp index adba47d..85ad41e 100644 --- a/orkbasecxx/ConfigManager.cpp +++ b/orkbasecxx/ConfigManager.cpp @@ -30,11 +30,15 @@ # define snprintf _snprintf #endif -ConfigManager ConfigManager::m_singleton; +ConfigManager* ConfigManager::m_singleton = NULL; ConfigManager* ConfigManager::Instance() { - return &m_singleton; + if(m_singleton == NULL) + { + m_singleton = new ConfigManager(); + } + return m_singleton; } void ConfigManager::Initialize() diff --git a/orkbasecxx/ConfigManager.h b/orkbasecxx/ConfigManager.h index a899b05..8d478f7 100644 --- a/orkbasecxx/ConfigManager.h +++ b/orkbasecxx/ConfigManager.h @@ -31,7 +31,7 @@ public: Config m_config; private: - static ConfigManager m_singleton; + static ConfigManager* m_singleton; std::list<ConfigureFunction> m_configureFunctions; DOMNode* m_configTopNode; XercesDOMParser *m_parser; |