diff options
author | James Cook <james@lindenlab.com> | 2009-12-07 10:40:12 -0800 |
---|---|---|
committer | James Cook <james@lindenlab.com> | 2009-12-07 10:40:12 -0800 |
commit | 864dd45b2b8dec32552112ed76246c9b0b3f7f0b (patch) | |
tree | de5ce187a9b26f67d2515fa140aa8d313e64a51d /indra/newview/llpanelimcontrolpanel.cpp | |
parent | 5d4959e3a107a6a40014528dd8e17e46bf128540 (diff) | |
parent | 7ff7709f9fd07de5cc9b039562d0fe3794f6ce36 (diff) |
merge
Diffstat (limited to 'indra/newview/llpanelimcontrolpanel.cpp')
-rw-r--r-- | indra/newview/llpanelimcontrolpanel.cpp | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/indra/newview/llpanelimcontrolpanel.cpp b/indra/newview/llpanelimcontrolpanel.cpp index 405c95fc22..8c19865550 100644 --- a/indra/newview/llpanelimcontrolpanel.cpp +++ b/indra/newview/llpanelimcontrolpanel.cpp @@ -71,6 +71,11 @@ void LLPanelChatControlPanel::onVoiceChannelStateChanged(const LLVoiceChannel::E childSetVisible("call_btn", ! is_call_started); } +LLPanelChatControlPanel::~LLPanelChatControlPanel() +{ + mVoiceChannelStateChangeConnection.disconnect(); +} + BOOL LLPanelChatControlPanel::postBuild() { childSetAction("call_btn", boost::bind(&LLPanelChatControlPanel::onCallButtonClicked, this)); @@ -113,7 +118,9 @@ void LLPanelChatControlPanel::setSessionId(const LLUUID& session_id) mSessionId = session_id; LLVoiceChannel* voice_channel = LLIMModel::getInstance()->getVoiceChannel(mSessionId); if(voice_channel) - voice_channel->setStateChangedCallback(boost::bind(&LLPanelChatControlPanel::onVoiceChannelStateChanged, this, _1, _2)); + { + mVoiceChannelStateChangeConnection = voice_channel->setStateChangedCallback(boost::bind(&LLPanelChatControlPanel::onVoiceChannelStateChanged, this, _1, _2)); + } } LLPanelIMControlPanel::LLPanelIMControlPanel() |