diff --git a/httplib.h b/httplib.h index bafae47..3628362 100644 --- a/httplib.h +++ b/httplib.h @@ -2452,6 +2452,7 @@ Server::process_request(Stream &strm, bool last_connection, // Check if the request URI doesn't exceed the limit if (reader.size() > CPPHTTPLIB_REQUEST_URI_MAX_LENGTH) { res.status = 414; + connection_close = true; return write_response(strm, last_connection, req, res); } @@ -2459,6 +2460,7 @@ Server::process_request(Stream &strm, bool last_connection, if (!parse_request_line(reader.ptr(), req) || !detail::read_headers(strm, req.headers)) { res.status = 400; + connection_close = true; return write_response(strm, last_connection, req, res); } diff --git a/test/test.cc b/test/test.cc index 71901a7..7413b22 100644 --- a/test/test.cc +++ b/test/test.cc @@ -530,7 +530,7 @@ protected: .Get("/streamed-cancel", [&](const Request & /*req*/, Response &res) { res.set_content_provider( - uint64_t(-1), + size_t(-1), [](uint64_t /*offset*/, uint64_t /*length*/, Out out) { std::string data = "data_chunk"; out(data.data(), data.size());