From d24645fbab9c7c0af0680c61b20a026b1bd42820 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20P=C3=B6sel?= Date: Fri, 10 May 2013 09:16:40 +0000 Subject: Skype: Fixed behavior of setting unsupported global statuses again (unsane: don't remove it, it's needed) git-svn-id: http://svn.miranda-ng.org/main/trunk@4614 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c --- protocols/Skype/src/skype_proto.cpp | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'protocols/Skype') diff --git a/protocols/Skype/src/skype_proto.cpp b/protocols/Skype/src/skype_proto.cpp index 8c30b01b5c..692f924a54 100644 --- a/protocols/Skype/src/skype_proto.cpp +++ b/protocols/Skype/src/skype_proto.cpp @@ -371,6 +371,21 @@ int __cdecl CSkypeProto::SetApparentMode(HANDLE hContact, int mode) { return 0; int CSkypeProto::SetStatus(int new_status) { + switch (new_status) + { + case ID_STATUS_OCCUPIED: + new_status = ID_STATUS_DND; + break; + case ID_STATUS_FREECHAT: + new_status = ID_STATUS_ONLINE; + break; + case ID_STATUS_ONTHEPHONE: + case ID_STATUS_OUTTOLUNCH: + case ID_STATUS_NA: + new_status = ID_STATUS_AWAY; + break; + } + if (new_status == this->m_iDesiredStatus) return 0; -- cgit v1.2.3