From 45c5b66e9ef4d8a2afafe4250e40557290f07997 Mon Sep 17 00:00:00 2001 From: Adam Ierymenko Date: Sat, 18 Jan 2014 14:53:59 -0800 Subject: [PATCH] Self test now passes on Windows. --- node/HttpClient.cpp | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/node/HttpClient.cpp b/node/HttpClient.cpp index 0e0c8ccf6..ca2324378 100644 --- a/node/HttpClient.cpp +++ b/node/HttpClient.cpp @@ -386,9 +386,13 @@ public: goto closeAndReturnFromHttp; } - hRequest = WinHttpOpenRequest(hConnect,L"GET",NULL,NULL,WINHTTP_NO_REFERER,WINHTTP_DEFAULT_ACCEPT_TYPES,0); + hRequest = WinHttpOpenRequest(hConnect,L"GET",urlPath.c_str(),NULL,WINHTTP_NO_REFERER,WINHTTP_DEFAULT_ACCEPT_TYPES,0); if (!hRequest) { - _handler(_arg,-1,_url,false,"error sending request"); + _handler(_arg,-1,_url,false,"error sending request (1)"); + goto closeAndReturnFromHttp; + } + if (!WinHttpSendRequest(hRequest,WINHTTP_NO_ADDITIONAL_HEADERS,0,WINHTTP_NO_REQUEST_DATA,0,0,0)) { + _handler(_arg,-1,_url,false,"error sending request (2)"); goto closeAndReturnFromHttp; } @@ -421,6 +425,8 @@ public: } while (dwSize > 0); _handler(_arg,dwStatusCode,_url,false,_body); + } else { + _handler(_arg,-1,_url,false,"receive response failed"); } } catch (std::bad_alloc &exc) { _handler(_arg,-1,_url,false,"insufficient memory");