fix #500. check result of readline

This commit is contained in:
orignal 2016-05-24 16:27:34 -04:00
parent f10064ce39
commit f01f6e94d1

View File

@ -716,12 +716,14 @@ namespace client
if (status == 200) // OK
{
bool isChunked = false, isGzip = false;
m_Etag = ""; m_LastModified = "";
std::string header, statusMessage;
std::getline (response, statusMessage);
// read until new line meaning end of header
while (!response.eof () && header != "\r")
{
std::getline (response, header);
if (response.fail ()) break;
auto colon = header.find (':');
if (colon != std::string::npos)
{
@ -741,7 +743,7 @@ namespace client
}
}
LogPrint (eLogInfo, "Addressbook: received ", m_Link, " ETag: ", m_Etag, " Last-Modified: ", m_LastModified);
if (!response.eof ())
if (!response.eof () && !response.fail ())
{
success = true;
if (!isChunked)