summaryrefslogtreecommitdiff
path: root/protocols/MSN/msn_http.cpp
diff options
context:
space:
mode:
authorGeorge Hazan <george.hazan@gmail.com>2012-06-03 19:17:51 +0000
committerGeorge Hazan <george.hazan@gmail.com>2012-06-03 19:17:51 +0000
commit4c1143795a4e0ab188e23f89ee456408fdb6da24 (patch)
treec86c49ab0bceb32a67336805a37dfd1470e8fa02 /protocols/MSN/msn_http.cpp
parent31ad5a2b294f59b5a64a8e7d8383669baeb7fdd0 (diff)
sync
git-svn-id: http://svn.miranda-ng.org/main/trunk@286 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c
Diffstat (limited to 'protocols/MSN/msn_http.cpp')
-rw-r--r--protocols/MSN/msn_http.cpp18
1 files changed, 12 insertions, 6 deletions
diff --git a/protocols/MSN/msn_http.cpp b/protocols/MSN/msn_http.cpp
index cb3b60bbc3..5f727ef30b 100644
--- a/protocols/MSN/msn_http.cpp
+++ b/protocols/MSN/msn_http.cpp
@@ -82,20 +82,26 @@ PBYTE msn_httpGatewayUnwrapRecv(NETLIBHTTPREQUEST* nlhr, PBYTE buf, int len, int
if (nlhr->resultCode == 200)
{
+ char *xMsgr = NULL, *xHost = NULL;
+
for (int i=0; i < nlhr->headersCount; i++)
{
NETLIBHTTPHEADER& tHeader = nlhr->headers[i];
- if (_stricmp(tHeader.szName, "X-MSN-Messenger") != 0)
- continue;
+ if (_stricmp(tHeader.szName, "X-MSN-Messenger") == 0)
+ xMsgr = tHeader.szValue;
+ else if (_stricmp(tHeader.szName, "X-MSN-Host") == 0)
+ xHost = tHeader.szValue;
+
+ }
+ if (xMsgr)
+ {
isMsnPacket = true;
- if (strstr(tHeader.szValue, "Session=close") == 0)
+ if (strstr(xMsgr, "Session=close") == 0)
isSessionClosed = false;
- else
- break;
- T->processSessionData(tHeader.szValue);
+ T->processSessionData(xMsgr, xHost);
T->applyGatewayData(nlhr->nlc, false);
}
}