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.