summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRozhuk Ivan <rozhuk.im@gmail.com>2014-03-10 01:09:01 +0000
committerRozhuk Ivan <rozhuk.im@gmail.com>2014-03-10 01:09:01 +0000
commit70adab8b9297abdd610422b7e743e2f8dbeceed6 (patch)
tree6a26b6ffa4b5d91b6bd2c3a7a5effe6a37fae28c
parent5958b2064712c58ac650f15a91812edc9259d7e2 (diff)
MRA
xStatus small fixes git-svn-id: http://svn.miranda-ng.org/main/trunk@8536 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c
-rw-r--r--protocols/MRA/src/Mra_proto.cpp11
1 files changed, 9 insertions, 2 deletions
diff --git a/protocols/MRA/src/Mra_proto.cpp b/protocols/MRA/src/Mra_proto.cpp
index 6dd55cb135..2d268d7e86 100644
--- a/protocols/MRA/src/Mra_proto.cpp
+++ b/protocols/MRA/src/Mra_proto.cpp
@@ -673,8 +673,15 @@ bool CMraProto::CmdUserStatus(BinBuffer &buf)
MraContactCapabilitiesSet(hContact, dwFutureFlags);
setByte(hContact, DBSETTING_XSTATUSID, (BYTE)dwXStatus);
- mraSetStringW(hContact, DBSETTING_XSTATUSNAME, szStatusTitle);
- mraSetStringW(hContact, DBSETTING_XSTATUSMSG, szStatusDesc);
+ if (dwXStatus) {
+ mraSetStringW(hContact, DBSETTING_XSTATUSNAME, szStatusTitle);
+ mraSetStringW(hContact, DBSETTING_XSTATUSMSG, szStatusDesc);
+ }
+ else {
+ delSetting(hContact, DBSETTING_XSTATUSNAME);
+ delSetting(hContact, DBSETTING_XSTATUSMSG);
+ }
+
if (dwTemp != ID_STATUS_OFFLINE) { // пишем клиента только если юзер не отключён, иначе не затираем старое
if (!szUserAgentFormatted.IsEmpty()) {