diff options
Diffstat (limited to 'indra/newview/llfloaterpreference.cpp')
-rw-r--r-- | indra/newview/llfloaterpreference.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/indra/newview/llfloaterpreference.cpp b/indra/newview/llfloaterpreference.cpp index 4cd0727ce2..ee6d5fad6c 100644 --- a/indra/newview/llfloaterpreference.cpp +++ b/indra/newview/llfloaterpreference.cpp @@ -588,6 +588,9 @@ void LLFloaterPreference::onOpen(const LLSD& key) // when the floater is opened. That will make cancel do its // job saveSettings(); + + // This is a "fresh" floater, closing floater shoud cancel any changes + mCancelOnClose = true; } void LLFloaterPreference::onVertexShaderEnable() @@ -631,6 +634,10 @@ void LLFloaterPreference::onBtnOK() saveSettings(); apply(); closeFloater(false); + // closeFloater() will be called when viewer is quitting, leaving mCancelOnClose = true; + // will cancel all changes we saved here, don't let this happen. + // Fix for EXT-3465 + gSavedSettings.saveToFile( gSavedSettings.getString("ClientSettingsFile"), TRUE ); LLUIColorTable::instance().saveUserSettings(); std::string crash_settings_filename = gDirUtilp->getExpandedFilename(LL_PATH_USER_SETTINGS, CRASH_SETTINGS_FILE); |