Still the same error

Patryk Zawadzki patrys at pld-linux.org
Tue Oct 9 18:32:36 PDT 2007


2007/10/9, Patryk Zawadzki <patrys at pld-linux.org>:
> Also when running update:
>
> -> ftp://ftp.th.pld-linux.org/dists/th/test/i686/RPMS/repodata/filelists.xml.gz
> *** glibc detected *** /usr/bin/python: double free or corruption
> (!prev): 0x08813fe0 ***

It seems to only kick in when curl is reused for multiple downloads
(clean download with no local cache for 2-3 repos at once).

gdb shows:

(gdb) up 1
#1  0xb77a78fb in Curl_setopt (data=0x86e9040, option=CURLOPT_URL,
   param=0xbfa5e228 "\2301Y\b<TUTAJ LOSOWE KRZAKI>") at url.c:1314
1314          free(data->change.url);
(gdb) p data->change
$1 = {
 url = 0x63656863 <Address 0x63656863 out of bounds>,
 url_alloc = 107,
 url_changed = 115,
 referer = 0x20200a3e <Address 0x20200a3e out of bounds>,
 referer_alloc = 32,
 cookielist = 0x73656d69
}
(gdb) up 2
#3  0xb77c2130 in do_curl_setopt (self=0x83be074, args=0x87856ec)
   at src/pycurl.c:1563
1563            res = curl_easy_setopt(self->handle, (CURLoption)option, buf);
(gdb) p buf
$2 = 0x84c7db0 "ftp://ftp.th.pld-linux.org/dists/th/test/i686/RPMS/repodata/primary.xml.gz"

frame #0 is a crash due to url_alloc being not FALSE but it's
obviously corrupted here (it should only become TRUE or FALSE, not
107) as is the rest of variables here (referer_alloc, url_changed).
Now I'm not sure if it's reproducible on other distros. I use curl
7.17.0 and gcc 4.2.1

-- 
Patryk Zawadzki
Generated Content



More information about the Smart mailing list