From fb527506d5e89bdde8df30be5d05de9aaf8cc2e8 Mon Sep 17 00:00:00 2001 From: Ansariel Date: Tue, 25 Oct 2016 16:09:07 +0200 Subject: [PATCH] Make fix for FIRE-20152 a bit nicer --- indra/newview/fsavatarrenderpersistence.cpp | 1 + indra/newview/fsavatarrenderpersistence.h | 2 +- indra/newview/llappviewer.cpp | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/indra/newview/fsavatarrenderpersistence.cpp b/indra/newview/fsavatarrenderpersistence.cpp index ba0adccc6e..ed80c02e36 100644 --- a/indra/newview/fsavatarrenderpersistence.cpp +++ b/indra/newview/fsavatarrenderpersistence.cpp @@ -36,6 +36,7 @@ FSAvatarRenderPersistence::FSAvatarRenderPersistence() FSAvatarRenderPersistence::~FSAvatarRenderPersistence() { + saveAvatarRenderSettings(); } void FSAvatarRenderPersistence::init() diff --git a/indra/newview/fsavatarrenderpersistence.h b/indra/newview/fsavatarrenderpersistence.h index dcdfeb76de..51481ea60b 100644 --- a/indra/newview/fsavatarrenderpersistence.h +++ b/indra/newview/fsavatarrenderpersistence.h @@ -40,7 +40,6 @@ friend class FSPanelPreferenceBackup; public: void init(); - void saveAvatarRenderSettings(); LLVOAvatar::VisualMuteSettings getAvatarRenderSettings(const LLUUID& avatar_id); void setAvatarRenderSettings(const LLUUID& avatar_id, LLVOAvatar::VisualMuteSettings render_settings); @@ -59,6 +58,7 @@ private: virtual ~FSAvatarRenderPersistence(); void loadAvatarRenderSettings(); + void saveAvatarRenderSettings(); avatar_render_setting_t mAvatarRenderMap; diff --git a/indra/newview/llappviewer.cpp b/indra/newview/llappviewer.cpp index d850fed445..00495adab6 100644 --- a/indra/newview/llappviewer.cpp +++ b/indra/newview/llappviewer.cpp @@ -2045,7 +2045,7 @@ bool LLAppViewer::cleanup() // FIRE-20152; save avatar render settings during cleanup, not in the dtor of the static instance. // Otherwise the save will happen during crt termination when most of the viewers infrastructure is in a non deterministic state if( FSAvatarRenderPersistence::instanceExists() ) - FSAvatarRenderPersistence::getInstance()->saveAvatarRenderSettings(); + FSAvatarRenderPersistence::getInstance()->deleteSingleton(); // // Must clean up texture references before viewer window is destroyed.