On 12/08/2006 10:37 PM, [EMAIL PROTECTED] wrote:
> Author: jim
> Date: Fri Dec  8 13:37:08 2006
> New Revision: 484792
> 
> URL: http://svn.apache.org/viewvc?view=rev&rev=484792
> Log:
> Failure to unlock is very nasty, so log it to help
> with troubleshooting.
> 
> Modified:
>     httpd/httpd/trunk/modules/proxy/mod_proxy_balancer.c
>     httpd/httpd/trunk/modules/proxy/mod_proxy_ftp.c
>     httpd/httpd/trunk/modules/proxy/proxy_util.c
> 

> 
> Modified: httpd/httpd/trunk/modules/proxy/mod_proxy_ftp.c
> URL: 
> http://svn.apache.org/viewvc/httpd/httpd/trunk/modules/proxy/mod_proxy_ftp.c?view=diff&rev=484792&r1=484791&r2=484792
> ==============================================================================
> --- httpd/httpd/trunk/modules/proxy/mod_proxy_ftp.c (original)
> +++ httpd/httpd/trunk/modules/proxy/mod_proxy_ftp.c Fri Dec  8 13:37:08 2006
> @@ -916,7 +916,10 @@
>                                      address_pool);
>      if (worker->is_address_reusable && !worker->cp->addr) {
>          worker->cp->addr = connect_addr;
> -        PROXY_THREAD_UNLOCK(worker);
> +        if ((err = PROXY_THREAD_UNLOCK(worker)) != APR_SUCCESS) {
> +            ap_log_error(APLOG_MARK, APLOG_ERR, err, r->server,
> +                         "proxy: FTP: unlock");
> +        }

This leads to the wrong error message "DNS lookup failure for:" a few lines
later. Shouldn't we do a

return HTTP_INTERNAL_SERVER_ERROR;

in the case unlocking fails?


>      }
>      /*
>       * get all the possible IP addresses for the destname and loop through
> 
> Modified: httpd/httpd/trunk/modules/proxy/proxy_util.c
> URL: 
> http://svn.apache.org/viewvc/httpd/httpd/trunk/modules/proxy/proxy_util.c?view=diff&rev=484792&r1=484791&r2=484792
> ==============================================================================
> --- httpd/httpd/trunk/modules/proxy/proxy_util.c (original)
> +++ httpd/httpd/trunk/modules/proxy/proxy_util.c Fri Dec  8 13:37:08 2006
> @@ -2049,7 +2049,10 @@
>                                      conn->port, 0,
>                                      worker->cp->pool);
>          conn->addr = worker->cp->addr;
> -        PROXY_THREAD_UNLOCK(worker);
> +        if ((err = PROXY_THREAD_UNLOCK(worker)) != APR_SUCCESS) {
> +            ap_log_error(APLOG_MARK, APLOG_ERR, err, r->server,
> +                         "proxy: unlock");
> +        }
>      }
>      else {
>          conn->addr = worker->cp->addr;

Same as above.

Regards

RĂ¼diger

Reply via email to