Added check in HTTP::Parser::Read against empty connection buffers.

This commit is contained in:
Thulinma 2014-10-16 15:22:46 +02:00
parent ebdb2f32d5
commit 7e8aaf8ee0

View file

@ -324,7 +324,7 @@ void HTTP::Parser::SetVar(std::string i, std::string v) {
/// \return True if a whole request or response was read, false otherwise.
bool HTTP::Parser::Read(Socket::Connection & conn) {
//Make sure the received data ends in a newline (\n).
while ((!seenHeaders || (getChunks && !doingChunk)) && *(conn.Received().get().rbegin()) != '\n') {
while ((!seenHeaders || (getChunks && !doingChunk)) && conn.Received().get().size() && *(conn.Received().get().rbegin()) != '\n') {
if (conn.Received().size() > 1) {
//make a copy of the first part
std::string tmp = conn.Received().get();