summaryrefslogtreecommitdiff
path: root/indra/newview/llfloaterpreference.cpp
diff options
context:
space:
mode:
authorrichard <none@none>2009-12-17 10:03:56 -0800
committerrichard <none@none>2009-12-17 10:03:56 -0800
commit724f5fbb7f7b101774c0cf3ff43bb98f9cc4ffc1 (patch)
treebfb7b4009b32761f9f760f97dd97cc0697667a71 /indra/newview/llfloaterpreference.cpp
parent9ff869a6b287a2b4b8c94219584d1c7b66ebb399 (diff)
parentcf63ce4dc1176d9df4fe852821e4a6d32332f7c6 (diff)
merge
Diffstat (limited to 'indra/newview/llfloaterpreference.cpp')
-rw-r--r--indra/newview/llfloaterpreference.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/indra/newview/llfloaterpreference.cpp b/indra/newview/llfloaterpreference.cpp
index ab27375b87..a333868b8c 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()
@@ -633,7 +636,11 @@ void LLFloaterPreference::onBtnOK()
// that prevents cancel from undoing our changes when we hit OK
mCancelOnClose = false;
closeFloater(false);
- mCancelOnClose = true;
+
+ // 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);