summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--indra/llui/llfloater.cpp12
1 files changed, 11 insertions, 1 deletions
diff --git a/indra/llui/llfloater.cpp b/indra/llui/llfloater.cpp
index 1f9869fadc..93ee1ceee3 100644
--- a/indra/llui/llfloater.cpp
+++ b/indra/llui/llfloater.cpp
@@ -2320,7 +2320,17 @@ void LLFloaterView::restoreAll()
// make sure all subwindows aren't minimized
for ( child_list_const_iter_t child_it = getChildList()->begin(); child_it != getChildList()->end(); ++child_it)
{
- LLFloater* floaterp = dynamic_cast<LLFloater*>(*child_it);
+ LLFloater* floaterp = NULL;
+ try
+ {
+ floaterp = dynamic_cast<LLFloater*>(*child_it);
+ }
+ catch (std::exception e) // See MAINT-6511
+ {
+ LL_WARNS() << "Caught exception: " << e.what() << LL_ENDL;
+ continue;
+ }
+
if (floaterp)
{
floaterp->setMinimized(FALSE);