summaryrefslogtreecommitdiff
path: root/protocols/SkypeWeb/src/skype_poll_processing.cpp
diff options
context:
space:
mode:
authorAlexander Lantsev <aunsane@gmail.com>2015-04-05 11:10:02 +0000
committerAlexander Lantsev <aunsane@gmail.com>2015-04-05 11:10:02 +0000
commit340d879890f5099c21e36fc147d6432a1ac050bf (patch)
tree5fca5e280b39370dba5252d9d4bfb219bd180420 /protocols/SkypeWeb/src/skype_poll_processing.cpp
parentbe6edec91cce66e2b77d22bd0e92a5d60ff92d75 (diff)
SteamWeb:
- fixed logout (patck from MikalaiR) - fixed action (/me) sending - added message duplication filter git-svn-id: http://svn.miranda-ng.org/main/trunk@12604 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c
Diffstat (limited to 'protocols/SkypeWeb/src/skype_poll_processing.cpp')
-rw-r--r--protocols/SkypeWeb/src/skype_poll_processing.cpp11
1 files changed, 10 insertions, 1 deletions
diff --git a/protocols/SkypeWeb/src/skype_poll_processing.cpp b/protocols/SkypeWeb/src/skype_poll_processing.cpp
index 9f0cc24fa1..fc20ed6683 100644
--- a/protocols/SkypeWeb/src/skype_poll_processing.cpp
+++ b/protocols/SkypeWeb/src/skype_poll_processing.cpp
@@ -106,7 +106,16 @@ void CSkypeProto::ProcessNewMessageRes(JSONNODE *node)
else if (!mir_strcmpi(messageType, "Text") || !mir_strcmpi(messageType, "RichText"))
{
int emoteOffset = json_as_int(json_get(node, "skypeemoteoffset"));
- OnReceiveMessage(clientMsgId, from, conversationLink, timestamp, content, emoteOffset);
+ ptrA skypename(ContactUrlToName(from));
+ if (IsMe(skypename))
+ {
+ MCONTACT hContact = GetContact(ptrA(ContactUrlToName(conversationLink)));
+ int hMessage = atoi(clientMsgId);
+ ProtoBroadcastAck(hContact, ACKTYPE_MESSAGE, ACKRESULT_SUCCESS, (HANDLE)hMessage, 0);
+ AddMessageToDb(hContact, timestamp, DBEF_UTF | DBEF_SENT, clientMsgId, &content[emoteOffset], emoteOffset);
+ return;
+ }
+ OnReceiveMessage(clientMsgId, from, timestamp, content, emoteOffset);
}
else if (!mir_strcmpi(messageType, "Event/SkypeVideoMessage"))
{