From d49072a4f1bc1fcd6a29885329f5314e13328c80 Mon Sep 17 00:00:00 2001 From: eidheim Date: Tue, 12 May 2020 15:54:56 +0200 Subject: [PATCH] Fixes #298: corrected chunked transfer read where first bytes in a chunk could be erroneously removed --- client_http.hpp | 3 ++- server_http.hpp | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/client_http.hpp b/client_http.hpp index ac59f7e..9ca313f 100644 --- a/client_http.hpp +++ b/client_http.hpp @@ -694,7 +694,7 @@ namespace SimpleWeb { if(!ec) { std::istream istream(chunk_size_streambuf.get()); std::string line; - getline(istream, line); + std::getline(istream, line); bytes_transferred -= line.size() + 1; unsigned long chunk_size = 0; try { @@ -736,6 +736,7 @@ namespace SimpleWeb { std::istream istream(&session->response->streambuf); // Remove "\r\n" + istream.seekg(2, std::ios::end); istream.get(); istream.get(); diff --git a/server_http.hpp b/server_http.hpp index b31501b..7e22c7c 100644 --- a/server_http.hpp +++ b/server_http.hpp @@ -601,7 +601,7 @@ namespace SimpleWeb { if(!ec) { std::istream istream(chunk_size_streambuf.get()); std::string line; - getline(istream, line); + std::getline(istream, line); bytes_transferred -= line.size() + 1; unsigned long chunk_size = 0; try { @@ -642,6 +642,7 @@ namespace SimpleWeb { std::istream istream(&session->request->streambuf); // Remove "\r\n" + istream.seekg(2, std::ios::end); istream.get(); istream.get();