cURL / Mailing Lists / curl-library / Single Mail

curl-library

Re: memlimit fail

From: Gisle Vanem <giva_at_bgnett.no>
Date: Mon, 07 Feb 2005 15:46:29 +0100

> (dns == 0x13131313). Since the connection was disconnected in Curl_wait_for_resolv(),
> Curl_done() should not touch the dns_entry. But I fail to see how this could get
> double-freed.

Ah, if Curl_wait_for_resolv() returns != CURLE_OK, 'conn' should never be
touched again. This is a problem with C-ares too (but I failed to trigger that
situation). Removing Curl_disconnect() at end of Curl_wait_for_resolv(), the
crash is gone. But that causes a memleak for unknown hosts:

Leak detected: memory still allocated: 1499 bytes
At d05e18, there's 43 bytes.
 allocated by url.c:3680
At d05c50, there's 256 bytes.
 allocated by url.c:2245
At d05e60, there's 23 bytes.
 allocated by url.c:3704
At d05dc0, there's 10 bytes.
 allocated by url.c:3069
At d05b38, there's 256 bytes.
 allocated by url.c:2240
At d057a8, there's 888 bytes.
 allocated by url.c:2185
At d05de8, there's 23 bytes.
 allocated by url.c:3070

IMHO the resolvers should never invalidate 'conn'. Is there a nicer way
to clean up?

--gv
Received on 2005-02-07