From 9633e40c6e61a80f4fa9f6bba10c6208e6b9589e Mon Sep 17 00:00:00 2001 From: Stephen Birarda Date: Tue, 2 Feb 2016 15:15:19 -0800 Subject: [PATCH] add code to remove old persistFilename setting --- .../src/DomainServerSettingsManager.cpp | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/domain-server/src/DomainServerSettingsManager.cpp b/domain-server/src/DomainServerSettingsManager.cpp index a0e647ed89..98bb63241e 100644 --- a/domain-server/src/DomainServerSettingsManager.cpp +++ b/domain-server/src/DomainServerSettingsManager.cpp @@ -125,11 +125,13 @@ void DomainServerSettingsManager::setupConfigMap(const QStringList& argumentList _configMap.loadMasterAndUserConfig(argumentList); } } else if (oldVersion < 1.1) { - static const QString ENTITY_FILE_NAME_KEYPATH = "entity_server_settings.persistFilename"; - static const QString ENTITY_FILE_PATH_KEYPATH = "entity_server_settings.persistFilePath"; + static const QString ENTITY_SERVER_SETTINGS_KEY = "entity_server_settings"; + static const QString ENTITY_FILE_NAME_KEY = "persistFilename"; + static const QString ENTITY_FILE_PATH_KEYPATH = ENTITY_SERVER_SETTINGS_KEY + ".persistFilePath"; // this was prior to change of poorly named entitiesFileName to entitiesFilePath - QVariant* persistFileNameVariant = valueForKeyPath(_configMap.getMergedConfig(), ENTITY_FILE_NAME_KEYPATH); + QVariant* persistFileNameVariant = valueForKeyPath(_configMap.getMergedConfig(), + ENTITY_SERVER_SETTINGS_KEY + "." + ENTITY_FILE_NAME_KEY); if (persistFileNameVariant && persistFileNameVariant->canConvert(QMetaType::QString)) { QString persistFileName = persistFileNameVariant->toString(); @@ -141,6 +143,15 @@ void DomainServerSettingsManager::setupConfigMap(const QStringList& argumentList // write the migrated value *persistFilePath = persistFileName; + // remove the old setting + QVariant* entityServerVariant = valueForKeyPath(_configMap.getUserConfig(), ENTITY_SERVER_SETTINGS_KEY); + if (entityServerVariant && entityServerVariant->canConvert(QMetaType::QVariantMap)) { + QVariantMap entityServerMap = entityServerVariant->toMap(); + entityServerMap.remove(ENTITY_FILE_NAME_KEY); + + *entityServerVariant = entityServerMap; + } + // write the new settings to the json file persistToFile();