From: Amos Jeffries Date: Mon, 4 Oct 2010 21:20:59 +0000 (+1300) Subject: Author: Stefan Fritsch X-Git-Tag: take1~202 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=048f7b35556673d60bf84d1953c95e5930c80298;p=thirdparty%2Fsquid.git Author: Stefan Fritsch Bug 3073: tunnelStateFree memory leak of host member --- diff --git a/src/tunnel.cc b/src/tunnel.cc index 2f9223d3c1..a2bee91152 100644 --- a/src/tunnel.cc +++ b/src/tunnel.cc @@ -175,7 +175,7 @@ tunnelStateFree(TunnelStateData * tunnelState) assert(tunnelState->noConnections()); safe_free(tunnelState->url); FwdState::serversFree(&tunnelState->servers); - tunnelState->host = NULL; + safe_free(tunnelState->host); HTTPMSGUNLOCK(tunnelState->request); delete tunnelState; } @@ -760,7 +760,7 @@ tunnelPeerSelectComplete(FwdServer * fs, void *data) } tunnelState->servers = fs; - tunnelState->host = fs->_peer ? fs->_peer->host : xstrdup(request->GetHost()); + tunnelState->host = fs->_peer ? xstrdup(fs->_peer->host) : xstrdup(request->GetHost()); request->peer_host = fs->_peer ? fs->_peer->host : NULL; if (fs->_peer == NULL) {