From baac722679b175b058389e3bcb8298a7bd80d16f Mon Sep 17 00:00:00 2001 From: demo-zhang Date: Tue, 12 Mar 2024 11:13:48 +0800 Subject: [PATCH] Fixed an issue with memcpy --- src/http_server.cc | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/http_server.cc b/src/http_server.cc index 7079820..67ce8b8 100644 --- a/src/http_server.cc +++ b/src/http_server.cc @@ -237,8 +237,9 @@ void HttpServer::HandleHttpData(const EventData &raw_request, // Set response to write to client response_string = to_string(http_response, http_request.method() != HttpMethod::HEAD); - memcpy(raw_response->buffer, response_string.c_str(), kMaxBufferSize); - raw_response->length = response_string.length(); + size_t length = std::min(response_string.length(), kMaxBufferSize); + memcpy(raw_response->buffer, response_string.c_str(), length); + raw_response->length = length; } HttpResponse HttpServer::HandleHttpRequest(const HttpRequest &request) {