summaryrefslogtreecommitdiff
path: root/indra/newview/llpresetsmanager.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'indra/newview/llpresetsmanager.cpp')
-rw-r--r--indra/newview/llpresetsmanager.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/indra/newview/llpresetsmanager.cpp b/indra/newview/llpresetsmanager.cpp
index bc77588b9f..1fcc456d62 100644
--- a/indra/newview/llpresetsmanager.cpp
+++ b/indra/newview/llpresetsmanager.cpp
@@ -458,6 +458,9 @@ void LLPresetsManager::loadPreset(const std::string& subdirectory, std::string n
LL_DEBUGS() << "attempting to load preset '"<<name<<"' from '"<<full_path<<"'" << LL_ENDL;
+ bool appearance_camera_movement = gSavedSettings.getBOOL("AppearanceCameraMovement");
+ bool edit_camera_movement = gSavedSettings.getBOOL("EditCameraMovement");
+
mIgnoreChangedSignal = true;
if(gSavedSettings.loadFromFile(full_path, false, true) > 0)
{
@@ -477,6 +480,16 @@ void LLPresetsManager::loadPreset(const std::string& subdirectory, std::string n
{
gSavedSettings.setString("PresetCameraActive", name);
triggerChangeCameraSignal();
+
+ //SL-20277 old preset files may contain settings that should be ignored when loading camera presets
+ if (appearance_camera_movement != (bool)gSavedSettings.getBOOL("AppearanceCameraMovement"))
+ {
+ gSavedSettings.setBOOL("AppearanceCameraMovement", appearance_camera_movement);
+ }
+ if (edit_camera_movement != (bool)gSavedSettings.getBOOL("EditCameraMovement"))
+ {
+ gSavedSettings.setBOOL("EditCameraMovement", edit_camera_movement);
+ }
}
}
else