diff --git a/mongoose.c b/mongoose.c
index e38ccb39ae2e6277b7f10adb77365beb2609c69c..4d57fb846336773859c2c40c6934ca6201af015d 100644
--- a/mongoose.c
+++ b/mongoose.c
@@ -4542,6 +4542,7 @@ static void close_local_endpoint(struct connection *conn) {
   conn->endpoint.nc = NULL;
   c->request_method = c->uri = c->http_version = c->query_string = NULL;
   conn->request = conn->path_info = NULL;
+  memset(c->http_headers, 0, sizeof(c->http_headers));
 
   if (keep_alive) {
     on_recv_data(conn);  // Can call us recursively if pipelining is used