summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMnikolenko ProductEngine <mnikolenko@productengine.com>2013-04-25 14:52:28 +0300
committerMnikolenko ProductEngine <mnikolenko@productengine.com>2013-04-25 14:52:28 +0300
commite4207901d782c8f1167736d7beee9d0ce0ae1086 (patch)
treed7e1da7f9fe4bb66321bc9c17e53977bc62f0630
parent5cf1c9bfe1e4285929f41adda84f8a7208fe1805 (diff)
CHUI-934 FIXED Do not add to vector if session is closed to avoid crash.
-rw-r--r--indra/newview/llfloaterimsession.cpp13
1 files changed, 9 insertions, 4 deletions
diff --git a/indra/newview/llfloaterimsession.cpp b/indra/newview/llfloaterimsession.cpp
index 6ed04f8716..9cf393f512 100644
--- a/indra/newview/llfloaterimsession.cpp
+++ b/indra/newview/llfloaterimsession.cpp
@@ -442,8 +442,11 @@ void LLFloaterIMSession::addSessionParticipants(const uuid_vec_t& uuids)
}
else
{
- // remember whom we have invited, to notify others later, when the invited ones actually join
- mInvitedParticipants.insert(mInvitedParticipants.end(), uuids.begin(), uuids.end());
+ if(findInstance(mSessionID))
+ {
+ // remember whom we have invited, to notify others later, when the invited ones actually join
+ mInvitedParticipants.insert(mInvitedParticipants.end(), uuids.begin(), uuids.end());
+ }
inviteToSession(uuids);
}
@@ -472,13 +475,15 @@ void LLFloaterIMSession::addP2PSessionParticipants(const LLSD& notification, con
if(findInstance(mSessionID))
{
onClose(false);
+
+ // remember whom we have invited, to notify others later, when the invited ones actually join
+ mInvitedParticipants.insert(mInvitedParticipants.end(), uuids.begin(), uuids.end());
}
// we start a new session so reset the initialization flag
mSessionInitialized = false;
- // remember whom we have invited, to notify others later, when the invited ones actually join
- mInvitedParticipants.insert(mInvitedParticipants.end(), uuids.begin(), uuids.end());
+
// Start a new ad hoc voice call if we invite new participants to a P2P call,
// or start a text chat otherwise.