summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorandreykproductengine <akleshchev@productengine.com>2015-04-15 14:15:43 +0300
committerandreykproductengine <akleshchev@productengine.com>2015-04-15 14:15:43 +0300
commit749cf1b257267dee5ba7339d5269b1b103f28dc0 (patch)
tree6e349068919ecbf8e7ad35d94519aae5521f383e
parent99c5f36f204759af1a81268be0bc72dd69789de4 (diff)
MAINT-5024 new crash in LLInspectToast
-rwxr-xr-xindra/newview/llinspecttoast.cpp13
1 files changed, 12 insertions, 1 deletions
diff --git a/indra/newview/llinspecttoast.cpp b/indra/newview/llinspecttoast.cpp
index d04378daaf..47560341e7 100755
--- a/indra/newview/llinspecttoast.cpp
+++ b/indra/newview/llinspecttoast.cpp
@@ -47,6 +47,7 @@ public:
/*virtual*/ void onOpen(const LLSD& notification_id);
/*virtual*/ BOOL handleToolTip(S32 x, S32 y, MASK mask);
+ /*virtual*/ void removeChild(LLView* child);
private:
void onToastDestroy(LLToast * toast);
@@ -98,7 +99,7 @@ void LLInspectToast::onOpen(const LLSD& notification_id)
panel->setMouseOpaque(FALSE);
if(mPanel != NULL && mPanel->getParent() == this)
{
- removeChild(mPanel);
+ LLInspect::removeChild(mPanel);
}
addChild(panel);
panel->setFocus(TRUE);
@@ -121,6 +122,16 @@ BOOL LLInspectToast::handleToolTip(S32 x, S32 y, MASK mask)
return LLFloater::handleToolTip(x, y, mask);
}
+// virtual
+void LLInspectToast::removeChild(LLView* child)
+{
+ if (mPanel == child)
+ {
+ mPanel = NULL;
+ }
+ LLInspect::removeChild(child);
+}
+
void LLInspectToast::onToastDestroy(LLToast * toast)
{
closeFloater(false);