summaryrefslogtreecommitdiff
path: root/protocols/FacebookRM/src/communication.cpp
diff options
context:
space:
mode:
authorRobert Pösel <robyer@seznam.cz>2014-03-15 11:18:52 +0000
committerRobert Pösel <robyer@seznam.cz>2014-03-15 11:18:52 +0000
commit16bd39badf853d4824796f8c3a6963339b551879 (patch)
tree6a9e01f6eff3c8ca9cecabdcf66eec39f6bbbd39 /protocols/FacebookRM/src/communication.cpp
parent2f23f177d8ffcb7e65c52fc7c28b9cb269be8abb (diff)
Facebook: solve eventual clientid conflicts - safety first :)
git-svn-id: http://svn.miranda-ng.org/main/trunk@8619 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c
Diffstat (limited to 'protocols/FacebookRM/src/communication.cpp')
-rw-r--r--protocols/FacebookRM/src/communication.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/protocols/FacebookRM/src/communication.cpp b/protocols/FacebookRM/src/communication.cpp
index 9308be3ed8..5c99482a89 100644
--- a/protocols/FacebookRM/src/communication.cpp
+++ b/protocols/FacebookRM/src/communication.cpp
@@ -1138,6 +1138,11 @@ bool facebook_client::channel()
case HTTP_CODE_OK:
return handle_success("channel");
+ case HTTP_CODE_GATEWAY_TIMEOUT:
+ // Maybe we have same clientid as other connected client, try to generate different one
+ this->chat_clientid_ = utils::text::rand_string(8, "0123456789abcdef");
+
+ // Intentionally fall to handle_error() below
case HTTP_CODE_FAKE_DISCONNECTED:
case HTTP_CODE_FAKE_ERROR:
default: