summaryrefslogtreecommitdiff
path: root/indra/newview/llimhandler.cpp
diff options
context:
space:
mode:
authorSteven Bennetts <steve@lindenlab.com>2009-09-11 23:50:59 +0000
committerSteven Bennetts <steve@lindenlab.com>2009-09-11 23:50:59 +0000
commit7df79382a075646a51f21bed0d7f8de883fc3608 (patch)
treee7a71ed0dc7e05e4091066e3a0455343dfcfce4f /indra/newview/llimhandler.cpp
parent56449313529145a3d3c0e231967d9502b549056c (diff)
merge https://svn.aws.productengine.com/secondlife/export-from-ll/viewer-2-0@1634 https://svn.aws.productengine.com/secondlife/pe/stable-2@1648 -> viewer-2.0.0-3
* Bugs: EXT-888 EXT-866 EXT-861 EXT-858 EXT-864 EXT-875 EXT-884 EXT-718 EXT-786 EXT-885 EXT-910 EXT-845 EXT-312 EXT-823 EXT-868 * New Development: EXT-748 EXT-863 EXT-835 QA: Please test Recent List to verify it has no troubles.
Diffstat (limited to 'indra/newview/llimhandler.cpp')
-rw-r--r--indra/newview/llimhandler.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/indra/newview/llimhandler.cpp b/indra/newview/llimhandler.cpp
index 0262e40803..a47477c446 100644
--- a/indra/newview/llimhandler.cpp
+++ b/indra/newview/llimhandler.cpp
@@ -35,6 +35,7 @@
#include "llnotificationhandler.h"
+#include "llagentdata.h"
#include "llbottomtray.h"
#include "llviewercontrol.h"
#include "lltoastimpanel.h"
@@ -77,9 +78,15 @@ void LLIMHandler::processNotification(const LLSD& notify)
{
LLSD substitutions = notification->getSubstitutions();
+ // According to comments in LLIMMgr::addMessage(), if we get message
+ // from ourselves, the sender id is set to null. This fixes EXT-875.
+ LLUUID avatar_id = substitutions["FROM_ID"].asUUID();
+ if (avatar_id.isNull())
+ avatar_id = gAgentID;
+
LLToastIMPanel::Params im_p;
im_p.notification = notification;
- im_p.avatar_id = substitutions["FROM_ID"].asUUID();
+ im_p.avatar_id = avatar_id;
im_p.from = substitutions["FROM"].asString();
im_p.time = substitutions["TIME"].asString();
im_p.message = substitutions["MESSAGE"].asString();