summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMnikolenko Productengine <mnikolenko@productengine.com>2021-10-22 16:09:41 +0300
committerMnikolenko Productengine <mnikolenko@productengine.com>2021-10-22 16:09:41 +0300
commitf2eba1909d5d02553c1f6b456a424b384f110fdf (patch)
tree4665324a245cd980d00036fce1bd931a71cfbc2f
parente774bffb28a71730792931aeb1ed6a46d3cfe67b (diff)
SL-16234 FIXED Frame stall caused by unnecessary building the floater when exiting viewer
-rw-r--r--indra/llui/llfloater.h2
-rw-r--r--indra/newview/llfloaterimcontainer.cpp8
2 files changed, 9 insertions, 1 deletions
diff --git a/indra/llui/llfloater.h b/indra/llui/llfloater.h
index 2672d600c6..306760b7fb 100644
--- a/indra/llui/llfloater.h
+++ b/indra/llui/llfloater.h
@@ -346,6 +346,8 @@ public:
// handle refocusing.
static void closeFrontmostFloater();
+ static bool isQuitRequested() { return sQuitting; }
+
// LLNotification::Params contextualNotification(const std::string& name)
// {
// return LLNotification::Params(name).context(mNotificationContext);
diff --git a/indra/newview/llfloaterimcontainer.cpp b/indra/newview/llfloaterimcontainer.cpp
index 9c84fa1991..2ccb9ab074 100644
--- a/indra/newview/llfloaterimcontainer.cpp
+++ b/indra/newview/llfloaterimcontainer.cpp
@@ -723,7 +723,13 @@ void LLFloaterIMContainer::setMinimized(BOOL b)
}
void LLFloaterIMContainer::setVisible(BOOL visible)
-{ LLFloaterIMNearbyChat* nearby_chat;
+{
+ if (LLFloater::isQuitRequested())
+ {
+ return;
+ }
+
+ LLFloaterIMNearbyChat* nearby_chat;
if (visible)
{
// Make sure we have the Nearby Chat present when showing the conversation container