From f74e3d40fdf2ca82c73490dc5d0cb1dd7b4ec028 Mon Sep 17 00:00:00 2001 From: Steven Bennetts Date: Fri, 9 Oct 2009 00:57:36 +0000 Subject: Added safety checks wherever getSpeakerManager() is called. Removed a meaningless (and misleading) const qualifier to a LLPointer return value. Added a getter for LLSpeakerMgr::mVoiceChannel to replace some very incorrect code casting LLIMSpeakerMgr to LLVoiceChannelP2P Reviewed by Leyla --- indra/newview/llimview.cpp | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) (limited to 'indra/newview/llimview.cpp') diff --git a/indra/newview/llimview.cpp b/indra/newview/llimview.cpp index 7a7b062b5d..6b947b2503 100644 --- a/indra/newview/llimview.cpp +++ b/indra/newview/llimview.cpp @@ -1432,12 +1432,15 @@ LLUUID LLIMMgr::addP2PSession(const std::string& name, { LLUUID session_id = addSession(name, IM_NOTHING_SPECIAL, other_participant_id); - LLVoiceChannelP2P* voice_channel = dynamic_cast(LLIMModel::getInstance()->getSpeakerManager(session_id)); - if (voice_channel) + LLIMSpeakerMgr* speaker_mgr = LLIMModel::getInstance()->getSpeakerManager(session_id); + if (speaker_mgr) { - voice_channel->setSessionHandle(voice_session_handle, caller_uri); + LLVoiceChannelP2P* voice_channel = dynamic_cast(speaker_mgr->getVoiceChannel()); + if (voice_channel) + { + voice_channel->setSessionHandle(voice_session_handle, caller_uri); + } } - return session_id; } -- cgit v1.2.3