diff options
author | Robert Pösel <robyer@seznam.cz> | 2014-09-11 08:31:54 +0000 |
---|---|---|
committer | Robert Pösel <robyer@seznam.cz> | 2014-09-11 08:31:54 +0000 |
commit | 531c99952106c49c9c81f67027e8de9828c4e5b4 (patch) | |
tree | 206c09c6da5b0ff40b6b2ab64b8d23a0f05fe405 | |
parent | 8bafe41c028c4419072938d19ed6e390d8947978 (diff) |
SkypeClassic: Sync from leechers repo
Bugfix: Not checked return value of Typing notification causing stale ERROR
messages that can be eaten by subsequent MESSAGE commands leading to loss of
incoming messages.
git-svn-id: http://svn.miranda-ng.org/main/trunk@10429 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c
-rw-r--r-- | protocols/SkypeClassic/src/skype.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/protocols/SkypeClassic/src/skype.cpp b/protocols/SkypeClassic/src/skype.cpp index 70e0111844..eed94b1b5f 100644 --- a/protocols/SkypeClassic/src/skype.cpp +++ b/protocols/SkypeClassic/src/skype.cpp @@ -2775,6 +2775,7 @@ INT_PTR SkypeRecvMessage(WPARAM wParam, LPARAM lParam) INT_PTR SkypeUserIsTyping(WPARAM wParam, LPARAM lParam) {
DBVARIANT dbv = { 0 };
MCONTACT hContact = (MCONTACT)wParam;
+ char szWhat[128];
if (protocol < 5 && !bIsImoproxy) return 0;
if (db_get_s(hContact, SKYPE_PROTONAME, "Typing_Stream", &dbv)) {
@@ -2792,8 +2793,10 @@ INT_PTR SkypeUserIsTyping(WPARAM wParam, LPARAM lParam) { return 0;
}
- SkypeSend("ALTER APPLICATION libpurple_typing DATAGRAM %s %s", dbv.pszVal,
+ sprintf(szWhat, "ALTER APPLICATION libpurple_typing DATAGRAM %s", dbv.pszVal);
+ SkypeSend("%s %s", szWhat,
(lParam == PROTOTYPE_SELFTYPING_ON ? "PURPLE_TYPING" : "PURPLE_NOT_TYPING"));
+ testfor(szWhat, 2000);
db_free(&dbv);
return 0;
}
|