From 531c99952106c49c9c81f67027e8de9828c4e5b4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20P=C3=B6sel?= Date: Thu, 11 Sep 2014 08:31:54 +0000 Subject: 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 --- protocols/SkypeClassic/src/skype.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'protocols/SkypeClassic/src') 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; } -- cgit v1.2.3