From: Ruediger Pluem Date: Mon, 4 Aug 2008 12:53:50 +0000 (+0000) Subject: * Remove call to apr_reslist_destroy. With the latest trunk version of X-Git-Tag: 2.3.0~402 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f18219717d64c83d08768d18d31498490712fe56;p=thirdparty%2Fapache%2Fhttpd.git * Remove call to apr_reslist_destroy. With the latest trunk version of apr-util this causes a lock during shutdown as at the point of time we would execute apr_reslist_destroy the reslist is already destroyed, because we are in a cleanup of the same pool where the reslist registered itself as precleanup. With apr-util 1.3.x calling apr_reslist_destroy is not really useful and needed in this case as we are in a cleanup that was registered against the same pool that is used by the reslist. As it was registered *after* the reslist was created it just runs *before* the reslist cleanup would run. This is somewhat pointless here and we could leave the job of destroying the reslist to the reslist cleanup. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@682369 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/modules/proxy/proxy_util.c b/modules/proxy/proxy_util.c index b1d0c918a57..2103b410492 100644 --- a/modules/proxy/proxy_util.c +++ b/modules/proxy/proxy_util.c @@ -1380,7 +1380,6 @@ static apr_status_t conn_pool_cleanup(void *theworker) proxy_worker *worker = (proxy_worker *)theworker; if (worker->cp->res) { worker->cp->pool = NULL; - apr_reslist_destroy(worker->cp->res); } return APR_SUCCESS; }