summaryrefslogtreecommitdiff
path: root/indra/newview/llfloaterpreference.cpp
diff options
context:
space:
mode:
authorskolb <none@none>2009-12-15 13:31:18 -0800
committerskolb <none@none>2009-12-15 13:31:18 -0800
commitdc9a62b5ab71868c6e9d3ff5c25a773a1135e974 (patch)
treec1f26801e3a1aa5cbbf7a918d5871bd0616442ac /indra/newview/llfloaterpreference.cpp
parent589472a4e91d61b70d1f4184fc1c8e7918fb5606 (diff)
parent89a8182c2cd8d04b85c70d82f654714b83afebb8 (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);