summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrey Kleshchev <andreykproductengine@lindenlab.com>2021-06-15 22:15:41 +0300
committerAndrey Kleshchev <andreykproductengine@lindenlab.com>2021-06-15 22:17:19 +0300
commitf41839e2b905fb680ef1c4cb253f5942c444bfa6 (patch)
tree9bf1546bcbda54196fe225d7c821cf10e16ff5b0
parent5b92d266df00c8d8b8a6353061b4a9672bfa97f5 (diff)
SL-15403 Crash at LLFloaterTools's setStatusText
On shutdown some floaters reset tools using LLToolMgr::setCurrentToolset and it updates LLFloaterTools, which might be dead by that point
-rw-r--r--indra/newview/llmaniprotate.cpp5
-rw-r--r--indra/newview/llmanipscale.cpp5
-rw-r--r--indra/newview/llmaniptranslate.cpp5
3 files changed, 12 insertions, 3 deletions
diff --git a/indra/newview/llmaniprotate.cpp b/indra/newview/llmaniprotate.cpp
index c3e39429a2..7c942e8b53 100644
--- a/indra/newview/llmaniprotate.cpp
+++ b/indra/newview/llmaniprotate.cpp
@@ -105,7 +105,10 @@ void LLManipRotate::handleSelect()
{
// *FIX: put this in mouseDown?
LLSelectMgr::getInstance()->saveSelectedObjectTransform(SELECT_ACTION_TYPE_PICK);
- gFloaterTools->setStatusText("rotate");
+ if (gFloaterTools)
+ {
+ gFloaterTools->setStatusText("rotate");
+ }
LLManip::handleSelect();
}
diff --git a/indra/newview/llmanipscale.cpp b/indra/newview/llmanipscale.cpp
index 9a8222d941..e74fd1241b 100644
--- a/indra/newview/llmanipscale.cpp
+++ b/indra/newview/llmanipscale.cpp
@@ -170,7 +170,10 @@ void LLManipScale::handleSelect()
LLBBox bbox = LLSelectMgr::getInstance()->getBBoxOfSelection();
updateSnapGuides(bbox);
LLSelectMgr::getInstance()->saveSelectedObjectTransform(SELECT_ACTION_TYPE_PICK);
- gFloaterTools->setStatusText("scale");
+ if (gFloaterTools)
+ {
+ gFloaterTools->setStatusText("scale");
+ }
LLManip::handleSelect();
}
diff --git a/indra/newview/llmaniptranslate.cpp b/indra/newview/llmaniptranslate.cpp
index 9248c160c6..8736d3b51f 100644
--- a/indra/newview/llmaniptranslate.cpp
+++ b/indra/newview/llmaniptranslate.cpp
@@ -287,7 +287,10 @@ LLManipTranslate::~LLManipTranslate()
void LLManipTranslate::handleSelect()
{
LLSelectMgr::getInstance()->saveSelectedObjectTransform(SELECT_ACTION_TYPE_PICK);
- gFloaterTools->setStatusText("move");
+ if (gFloaterTools)
+ {
+ gFloaterTools->setStatusText("move");
+ }
LLManip::handleSelect();
}