From a5f3c70eeff4aeeb3c5fd463bed5be7cfb2cf60e Mon Sep 17 00:00:00 2001
From: Leslie Linden <leslie@lindenlab.com>
Date: Tue, 25 Oct 2011 15:52:08 -0700
Subject: [PATCH] EXP-1469 FIX -- Changing toolbar from "icons only" to "icons
 with text" while incoming/outgoing call floater is open causes crash on mac

* Updated LLToolBar to call remove and add on all buttons when rebuilding the toolbar.
---
 indra/llui/lltoolbar.cpp | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/indra/llui/lltoolbar.cpp b/indra/llui/lltoolbar.cpp
index ea11750e38c..2d96bf2fc6b 100644
--- a/indra/llui/lltoolbar.cpp
+++ b/indra/llui/lltoolbar.cpp
@@ -824,6 +824,11 @@ void LLToolBar::createButtons()
 {
 	BOOST_FOREACH(LLToolBarButton* button, mButtons)
 	{
+		if (mButtonRemoveSignal)
+		{
+			(*mButtonRemoveSignal)(button);
+		}
+		
 		delete button;
 	}
 	mButtons.clear();
@@ -835,6 +840,11 @@ void LLToolBar::createButtons()
 		mButtons.push_back(button);
 		mButtonPanel->addChild(button);
 		mButtonMap.insert(std::make_pair(command_id.uuid(), button));
+		
+		if (mButtonAddSignal)
+		{
+			(*mButtonAddSignal)(button);
+		}
 	}
 	mNeedsLayout = true;
 }
-- 
GitLab