summaryrefslogtreecommitdiff
path: root/indra/newview/llpanelgrouproles.cpp
diff options
context:
space:
mode:
authorAndrey Kleshchev <andreykproductengine@lindenlab.com>2024-02-24 00:54:57 +0200
committerAndrey Kleshchev <117672381+akleshchev@users.noreply.github.com>2024-02-25 15:28:02 +0200
commitd31de6afb2ac9f659efc13c438df727372fcac08 (patch)
tree9d8cd012b8e5cc3a15702a6881b0b71ee2152b0c /indra/newview/llpanelgrouproles.cpp
parent5dcc0606a8512159660c652cb25e7f29292f2df0 (diff)
Issue#884 Crash on ~LLSearchEditor
Crash seems to be specific to LLFilterEditor and only in a couple specific floaters. Based on older calltacks, commiting on exit was crashing. So I'm making sure that panels that potentially do not own the element in question clean the callback in case panels get deleted before the search editor.
Diffstat (limited to 'indra/newview/llpanelgrouproles.cpp')
-rw-r--r--indra/newview/llpanelgrouproles.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/indra/newview/llpanelgrouproles.cpp b/indra/newview/llpanelgrouproles.cpp
index b5d4712868..6c81eb3ea1 100644
--- a/indra/newview/llpanelgrouproles.cpp
+++ b/indra/newview/llpanelgrouproles.cpp
@@ -437,6 +437,7 @@ LLPanelGroupSubTab::LLPanelGroupSubTab()
LLPanelGroupSubTab::~LLPanelGroupSubTab()
{
+ mSearchCommitConnection.disconnect();
}
bool LLPanelGroupSubTab::postBuildSubTab(LLView* root)
@@ -469,7 +470,8 @@ bool LLPanelGroupSubTab::postBuild()
mSearchEditor = findChild<LLFilterEditor>("filter_input", recurse);
if (mSearchEditor) // SubTab doesn't implement this, only some of derived classes
{
- mSearchEditor->setCommitCallback(boost::bind(&LLPanelGroupSubTab::setSearchFilter, this, _2));
+ // panel
+ mSearchCommitConnection = mSearchEditor->setCommitCallback(boost::bind(&LLPanelGroupSubTab::setSearchFilter, this, _2));
}
return LLPanelGroupTab::postBuild();