From: rousskov <> Date: Thu, 28 May 1998 11:12:58 +0000 (+0000) Subject: - fixed memory leak: "prefix_p = xmalloc(prefix_sz + 1);" was no freed X-Git-Tag: SQUID_3_0_PRE1~3230 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=13f11a4a993c0f0ba06110c7a7895421d7046bc2;p=thirdparty%2Fsquid.git - fixed memory leak: "prefix_p = xmalloc(prefix_sz + 1);" was no freed in most cases. --- diff --git a/src/client_side.cc b/src/client_side.cc index 29e398e872..21de1d25f8 100644 --- a/src/client_side.cc +++ b/src/client_side.cc @@ -1,6 +1,6 @@ /* - * $Id: client_side.cc,v 1.317 1998/05/27 22:51:49 rousskov Exp $ + * $Id: client_side.cc,v 1.318 1998/05/28 05:12:58 rousskov Exp $ * * DEBUG: section 33 Client-side Routines * AUTHOR: Duane Wessels @@ -2098,6 +2098,8 @@ clientReadRequest(int fd, void *data) &parser_return_code, &prefix, &req_line_sz); + if (!http) + safe_free(prefix); if (http) { assert(http->req_sz > 0); conn->in.offset -= http->req_sz; @@ -2119,6 +2121,7 @@ clientReadRequest(int fd, void *data) err->request_hdrs = xstrdup(conn->in.buf); http->entry = clientCreateStoreEntry(http, method, 0); errorAppendEntry(http->entry, err); + safe_free(prefix); break; } if ((request = urlParse(method, http->uri)) == NULL) { @@ -2151,6 +2154,7 @@ clientReadRequest(int fd, void *data) } } } + safe_free(prefix); safe_free(http->log_uri); http->log_uri = xstrdup(urlCanonicalClean(request)); request->client_addr = conn->peer.sin_addr;