From 11a9fe3e7c10fddee6bcf4294e852f6ae389e3d6 Mon Sep 17 00:00:00 2001 From: Sergei Litovchuk Date: Tue, 24 Nov 2009 22:38:32 +0200 Subject: Fixed critical EXT-2469 "Viewer crashes in the Floater Call". - Replaced a boost::function in VoiceChannel by a boost::signal connection for calling VoiceChannel state change callback. --HG-- branch : product-engine --- indra/newview/llvoicechannel.h | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'indra/newview/llvoicechannel.h') diff --git a/indra/newview/llvoicechannel.h b/indra/newview/llvoicechannel.h index 639585de55..a3495b9588 100644 --- a/indra/newview/llvoicechannel.h +++ b/indra/newview/llvoicechannel.h @@ -52,7 +52,7 @@ public: STATE_CONNECTED } EState; - typedef boost::function state_changed_callback_t; + typedef boost::signals2::signal state_changed_signal_t; // on current channel changed signal typedef boost::function channel_changed_callback_t; @@ -78,7 +78,8 @@ public: virtual BOOL callStarted(); const std::string& getSessionName() const { return mSessionName; } - void setStateChangedCallback(state_changed_callback_t callback) { mStateChangedCallback = callback; } + boost::signals2::connection setStateChangedCallback(const state_changed_signal_t::slot_type& callback) + { return mStateChangedCallback.connect(callback); } const LLUUID getSessionID() { return mSessionID; } EState getState() { return mState; } @@ -124,7 +125,7 @@ protected: static BOOL sSuspended; private: - state_changed_callback_t mStateChangedCallback; + state_changed_signal_t mStateChangedCallback; }; class LLVoiceChannelGroup : public LLVoiceChannel -- cgit v1.2.3 From 03fc1c95931dbf4e1e2e06b3096ce251297636d6 Mon Sep 17 00:00:00 2001 From: Dmitry Oleshko Date: Fri, 27 Nov 2009 13:15:45 +0200 Subject: build fix for partial fix for major sub-task (EXT-2211) Add textual indication (IM messages) about incoming voice calls and reactions on them (All types of IMs) --HG-- branch : product-engine --- indra/newview/llvoicechannel.h | 3 +++ 1 file changed, 3 insertions(+) (limited to 'indra/newview/llvoicechannel.h') diff --git a/indra/newview/llvoicechannel.h b/indra/newview/llvoicechannel.h index a3495b9588..fe0114d687 100644 --- a/indra/newview/llvoicechannel.h +++ b/indra/newview/llvoicechannel.h @@ -176,6 +176,9 @@ public: void setSessionHandle(const std::string& handle, const std::string &inURI); + // returns TRUE if call is incoming and FALSE otherwise + BOOL isIncomingCall() { return mReceivedCall; } + protected: virtual void setState(EState state); -- cgit v1.2.3