summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGluzskiy Alexandr <sss@sss.chaoslab.ru>2018-04-04 20:04:41 +0300
committerGluzskiy Alexandr <sss@sss.chaoslab.ru>2018-04-04 20:05:21 +0300
commit423151d3c791f4e77d74385abf6ec0b657be0c56 (patch)
treee66b7b82c45ae26bb31e5bd4ce555ae78e545812
parent2f85d5d57ca99ff0f0530813a327b740086e0b1e (diff)
protocols: jabber: xep-0198
- basic error handling
-rwxr-xr-xprotocols/JabberG/src/jabber_strm_mgmt.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/protocols/JabberG/src/jabber_strm_mgmt.cpp b/protocols/JabberG/src/jabber_strm_mgmt.cpp
index 070e747913..6fa7afcf84 100755
--- a/protocols/JabberG/src/jabber_strm_mgmt.cpp
+++ b/protocols/JabberG/src/jabber_strm_mgmt.cpp
@@ -148,7 +148,12 @@ void strm_mgmt::OnProcessFailed(HXML node, ThreadData * /*info*/) //used failed
{
if (!mir_wstrcmp(XmlGetAttrValue(node, L"xmlns"), L"urn:xmpp:sm:3"))
{
- //TODO: handle failure
+ m_bStrmMgmtEnabled = false;
+ if (XmlGetChild(node, L"item-not-found")) //session timeout
+ {
+ bSessionResumed = false;
+ EnableStrmMgmt(); //resume failed, try to enable strm_mgmt instead
+ }
}
}