diff --git a/indra/newview/llagent.cpp b/indra/newview/llagent.cpp index 6ee8f26b9fa6b2887d45bf11cfd9087686920f61..b1cd68140e145a89b4dd3b161aa347b6c0a739a5 100755 --- a/indra/newview/llagent.cpp +++ b/indra/newview/llagent.cpp @@ -981,6 +981,10 @@ boost::signals2::connection LLAgent::addRegionChangedCallback(region_changed_cal return mRegionChangedSignal.connect(cb); } +void LLAgent::removeRegionChangedCallback(boost::signals2::connection callback) +{ + mRegionChangedSignal.disconnect(callback); +} //----------------------------------------------------------------------------- // inPrelude() diff --git a/indra/newview/llagent.h b/indra/newview/llagent.h index 0662be897a3c807d1ac414af4f46f674f210081e..bc003387de9a993fa520f9d4a0b8cb96c9dd4390 100755 --- a/indra/newview/llagent.h +++ b/indra/newview/llagent.h @@ -273,6 +273,7 @@ class LLAgent : public LLOldEvents::LLObservable */ typedef boost::function<void()> region_changed_callback_t; boost::signals2::connection addRegionChangedCallback(region_changed_callback_t); + void removeRegionChangedCallback(boost::signals2::connection callback); private: LLViewerRegion *mRegionp;