From 1886428638c2cb1e82db9f97ad311c2a506677a6 Mon Sep 17 00:00:00 2001
From: Ima Mechanique <ima.mechanique@secondlife.com>
Date: Wed, 18 Dec 2013 06:26:22 +0000
Subject: [PATCH] STORM-1831 Changing addRegionChangedCallback to more closely
 resemble the feature it replaces. This fixes the crashes reported by Whirly
 ;-)

---
 indra/newview/llagent.cpp | 2 +-
 indra/newview/llagent.h   | 6 +++---
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/indra/newview/llagent.cpp b/indra/newview/llagent.cpp
index b1cd68140e1..14a25086971 100755
--- a/indra/newview/llagent.cpp
+++ b/indra/newview/llagent.cpp
@@ -976,7 +976,7 @@ LLHost LLAgent::getRegionHost() const
 	}
 }
 
-boost::signals2::connection LLAgent::addRegionChangedCallback(region_changed_callback_t cb)
+boost::signals2::connection LLAgent::addRegionChangedCallback(const region_changed_signal_t::slot_type& cb)
 {
 	return mRegionChangedSignal.connect(cb);
 }
diff --git a/indra/newview/llagent.h b/indra/newview/llagent.h
index bc003387de9..0766407494e 100755
--- a/indra/newview/llagent.h
+++ b/indra/newview/llagent.h
@@ -271,13 +271,13 @@ class LLAgent : public LLOldEvents::LLObservable
 	 *       // you may or may not want to remove that callback
 	 * 	 }
 	 */
-	typedef boost::function<void()> region_changed_callback_t;
-	boost::signals2::connection     addRegionChangedCallback(region_changed_callback_t);
+	typedef boost::signals2::signal<void()> region_changed_signal_t;
+
+	boost::signals2::connection     addRegionChangedCallback(const region_changed_signal_t::slot_type& cb);
 	void                            removeRegionChangedCallback(boost::signals2::connection callback);
 
   private:
 	LLViewerRegion	*mRegionp;
-	typedef boost::signals2::signal<void()> region_changed_signal_t;
 	region_changed_signal_t		            mRegionChangedSignal;
 
 	//--------------------------------------------------------------------
-- 
GitLab