diff options
-rw-r--r-- | protocols/SkypeWeb/src/skype_trouter.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/protocols/SkypeWeb/src/skype_trouter.cpp b/protocols/SkypeWeb/src/skype_trouter.cpp index 312d7f4ec4..8249898e92 100644 --- a/protocols/SkypeWeb/src/skype_trouter.cpp +++ b/protocols/SkypeWeb/src/skype_trouter.cpp @@ -159,12 +159,20 @@ void CSkypeProto::TRouterThread(void*) }
else
{
+ errors++;
+
SendRequest(new HealthTrouterRequest(TRouter.ccid.c_str()), &CSkypeProto::OnHealth);
m_hTrouterHealthEvent.Wait();
}
m_TrouterConnection = response->nlc;
}
delete request;
+
+ if (m_iStatus != ID_STATUS_OFFLINE)
+ {
+ debugLogA(__FUNCTION__ ": unexpected termination; switching protocol to offline");
+ SetStatus(ID_STATUS_OFFLINE);
+ }
}
m_hTrouterThread = NULL;
m_TrouterConnection = NULL;
|