Package: python-lxml
Version: 2.0.2-1
Severity: important

Hi,

when lxml.etree.iterparse is used with an XML schema instance for on-the-fly 
validation, the Python interpreter crashes when the iterparse object is 
collected.

Stack trace:
*** glibc detected *** python2.5-dbg: free(): invalid pointer: 0x085ff7a4 ***
======= Backtrace: =========
/lib/i686/cmov/libc.so.6[0xb7e08564]
/lib/i686/cmov/libc.so.6(cfree+0x96)[0xb7e0a766]
/usr/lib/libxml2.so.2(xmlFreeParserCtxt+0xec)[0xb7622a4c]
/usr/lib/python2.5/site-packages/lxml/etree_d.so[0xb7807994]
/usr/lib/python2.5/site-packages/lxml/etree_d.so[0xb789a55a]
/usr/lib/python2.5/site-packages/lxml/etree_d.so[0xb789d4a5]
python2.5-dbg(_Py_Dealloc+0x28)[0x80969d0]
/usr/lib/python2.5/site-packages/lxml/etree_d.so[0xb7891f40]
/usr/lib/python2.5/site-packages/lxml/etree_d.so[0xb789dd9d]
python2.5-dbg(_Py_Dealloc+0x28)[0x80969d0]
python2.5-dbg[0x8145dde]
python2.5-dbg(_Py_Dealloc+0x28)[0x80969d0]
python2.5-dbg[0x80ec524]
python2.5-dbg[0x80ec214]
python2.5-dbg(PyEval_EvalFrameEx+0x85b8)[0x80e787f]
python2.5-dbg[0x80ec4ba]
python2.5-dbg[0x80ec214]
python2.5-dbg(PyEval_EvalFrameEx+0x85b8)[0x80e787f]
python2.5-dbg[0x80ec4ba]
python2.5-dbg[0x80ec214]
python2.5-dbg(PyEval_EvalFrameEx+0x85b8)[0x80e787f]
python2.5-dbg(PyEval_EvalCodeEx+0xc07)[0x80e9d58]
python2.5-dbg(PyEval_EvalCode+0x57)[0x80df2aa]
python2.5-dbg[0x8113cf8]
python2.5-dbg(PyRun_FileExFlags+0xbb)[0x8113c8e]
python2.5-dbg(PyRun_SimpleFileExFlags+0x267)[0x811282c]
python2.5-dbg(PyRun_AnyFileExFlags+0x7e)[0x8111f68]
python2.5-dbg(Py_Main+0x8fe)[0x8059c30]
python2.5-dbg(main+0x22)[0x8058cf6]
/lib/i686/cmov/libc.so.6(__libc_start_main+0xe6)[0xb7db0456]
python2.5-dbg[0x8058c41]
======= Memory map: ========
08048000-08181000 r-xp 00000000 08:01 2399818    /usr/bin/python2.5-dbg
08181000-081ac000 rwxp 00139000 08:01 2399818    /usr/bin/python2.5-dbg
081ac000-08715000 rwxp 081ac000 00:00 0          [heap]
b7300000-b7321000 rwxp b7300000 00:00 0 
b7321000-b7400000 ---p b7321000 00:00 0 
b74ea000-b7550000 r-xp 00000000 08:01 2401666    /usr/lib/libsqlite3.so.0.8.6
b7550000-b7552000 rwxp 00066000 08:01 2401666    /usr/lib/libsqlite3.so.0.8.6
b756a000-b757a000 r-xp 00000000 08:01 1550519    
/usr/lib/python2.5/lib-dynload/_sqlite3_d.so
b757a000-b757c000 rwxp 0000f000 08:01 1550519    
/usr/lib/python2.5/lib-dynload/_sqlite3_d.so
b757c000-b758f000 r-xp 00000000 08:01 1550533    
/usr/lib/python2.5/lib-dynload/datetime_d.so
b758f000-b7592000 rwxp 00012000 08:01 1550533    
/usr/lib/python2.5/lib-dynload/datetime_d.so
b7592000-b7595000 r-xp 00000000 08:01 2401174    /usr/lib/libgpg-error.so.0.3.0
b7595000-b7596000 rwxp 00002000 08:01 2401174    /usr/lib/libgpg-error.so.0.3.0
b7596000-b75fc000 r-xp 00000000 08:01 2401032    /usr/lib/libgcrypt.so.11.4.3
b75fc000-b75fe000 rwxp 00065000 08:01 2401032    /usr/lib/libgcrypt.so.11.4.3
b75fe000-b7716000 r-xp 00000000 08:01 2401334    /usr/lib/libxml2.so.2.6.31
b7716000-b771b000 rwxp 00118000 08:01 2401334    /usr/lib/libxml2.so.2.6.31
b771b000-b771c000 rwxp b771b000 00:00 0 
b771c000-b772c000 r-xp 00000000 08:01 2402955    /usr/lib/libexslt.so.0.8.13
b772c000-b772d000 rwxp 0000f000 08:01 2402955    /usr/lib/libexslt.so.0.8.13
b772d000-b7760000 r-xp 00000000 08:01 2404263    /usr/lib/libxslt.so.1.1.22
b7760000-b7761000 rwxp 00032000 08:01 2404263    /usr/lib/libxslt.so.1.1.22
b7765000-b7771000 r-xp 00000000 08:01 1734355    /lib/libgcc_s.so.1
b7771000-b7772000 rwxp 0000b000 08:01 1734355    /lib/libgcc_s.so.1
b7772000-b7779000 r-xs 00000000 08:01 2399320    
/usr/lib/gconv/gconv-modules.cache
b7779000-b78c5000 r-xp 00000000 08:01 103925     
/usr/lib/python2.5/site-packages/lxml/etree_d.so
b78c5000-b78e0000 rwxp 0014b000 08:01 103925     
/usr/lib/python2.5/site-packages/lxml/etree_d.so
b78e0000-b78e6000 rwxp b78e0000 00:00 0 
b78e6000-b78e8000 r-xp 00000000 08:01 1550505    
/usr/lib/python2.5/lib-dynload/_functools_d.so
b78e8000-b78e9000 rwxp 00001000 08:01 1550505    
/usr/lib/python2.5/lib-dynload/_functools_d.so
b78e9000-b794a000 rwxp b78e9000 00:00 0 
b794a000-b794c000 r-xp 00000000 08:01 1517763    
/usr/lib/python2.5/lib-dynload/_bisect_d.so
b794c000-b794d000 rwxp 00001000 08:01 1517763    
/usr/lib/python2.5/lib-dynload/_bisect_d.so
b794d000-b7951000 r-xp 00000000 08:01 1550520    
/usr/lib/python2.5/lib-dynload/_ssl_d.so
b7951000-b7952000 rwxp 00003000 08:01 1550520    
/usr/lib/python2.5/lib-dynload/_ssl_d.so                                       
134
b7952000-b7a83000 r-xp 00000000 08:01 147396     
/usr/lib/i686/cmov/libcrypto.so.0.9.8
b7a83000-b7a99000 rwxp 00131000 08:01 147396     
/usr/lib/i686/cmov/libcrypto.so.0.9.8
b7a99000-b7a9c000 rwxp b7a99000 00:00 0 
b7a9c000-b7add000 r-xp 00000000 08:01 147397     
/usr/lib/i686/cmov/libssl.so.0.9.8
b7add000-b7ae1000 rwxp 00040000 08:01 147397     
/usr/lib/i686/cmov/libssl.so.0.9.8
b7ae3000-b7aee000 r-xp 00000000 08:01 1550518    
/usr/lib/python2.5/lib-dynload/_socket_d.so
b7aee000-b7af1000 rwxp 0000b000 08:01 1550518    
/usr/lib/python2.5/lib-dynload/_socket_d.so
b7af1000-b7af4000 r-xp 00000000 08:01 1550541    
/usr/lib/python2.5/lib-dynload/fcntl_d.so
b7af4000-b7af5000 rwxp 00003000 08:01 1550541    
/usr/lib/python2.5/lib-dynload/fcntl_d.so
b7af5000-b7af8000 r-xp 00000000 08:01 1550517    
/usr/lib/python2.5/lib-dynload/_random_d.so
b7af8000-b7af9000 rwxp 00002000 08:01 1550517    
/usr/lib/python2.5/lib-dynload/_random_d.so
b7af9000-b7b0d000 r-xp 00000000 08:01 2402691    /usr/lib/libz.so.1.2.3.3
b7b0d000-b7b0e000 rwxp 00013000 08:01 2402691    /usr/lib/libz.so.1.2.3.3
b7b0f000-b7b12000 r-xp 00000000 08:01 1550645    
/usr/lib/python2.5/lib-dynload/math_d.so
b7b12000-b7b13000 rwxp 00002000 08:01 1550645    
/usr/lib/python2.5/lib-dynload/math_d.so
b7b13000-b7b15000 r-xp 00000000 08:01 1550506    
/usr/lib/python2.5/lib-dynload/_hashlib_d.so
b7b15000-b7b16000 rwxp 00002000 08:01 1550506    
/usr/lib/python2.5/lib-dynload/_hashlib_d.so
b7b16000-b7b1a000 r-xp 00000000 08:01 1550526    
/usr/lib/python2.5/lib-dynload/binascii_d.so
b7b1a000-b7b1c000 rwxp 00003000 08:01 1550526    
/usr/lib/python2.5/lib-dynload/binascii_d.so
b7b1c000-b7b23000 r-xp 00000000 08:01 1550521    
/usr/lib/python2.5/lib-dynload/_struct_d.so
b7b23000-b7b24000 rwxp 00007000 08:01 1550521    
/usr/lib/python2.5/lib-dynload/_struct_d.so
b7b24000-b7b25000 r-xp 00000000 08:01 1550523    
/usr/lib/python2.5/lib-dynload/_weakref_d.so
b7b25000-b7b26000 rwxp 00000000 08:01 1550523    
/usr/lib/python2.5/lib-dynload/_weakref_d.so
b7b26000-b7b2b000 r-xp 00000000 08:01 1550688    
/usr/lib/python2.5/lib-dynload/zlib_d.so
b7b2b000-b7b2d000 rwxp 00004000 08:01 1550688    
/usr/lib/python2.5/lib-dynload/zlib_d.so
b7b2d000-b7b43000 r-xp 00000000 08:01 1550528    
/usr/lib/python2.5/lib-dynload/cPickle_d.so
b7b43000-b7b44000 rwxp 00016000 08:01 1550528    
/usr/lib/python2.5/lib-dynload/cPickle_d.so
b7b44000-b7b4c000 r-xp 00000000 08:01 1550524    
/usr/lib/python2.5/lib-dynload/array_d.so
b7b4c000-b7b4e000 rwxp 00008000 08:01 1550524    
/usr/lib/python2.5/lib-dynload/array_d.so
b7b4e000-b7b54000 r-xp 00000000 08:01 1550662    
/usr/lib/python2.5/lib-dynload/operator_d.so
b7b54000-b7b55000 rwxp 00006000 08:01 1550662    
/usr/lib/python2.5/lib-dynload/operator_d.so
b7b55000-b7b5d000 r-xp 00000000 08:01 1550625    
/usr/lib/python2.5/lib-dynload/itertools_d.so
b7b5d000-b7b60000 rwxp 00007000 08:01 1550625    
/usr/lib/python2.5/lib-dynload/itertools_d.so
b7b60000-b7ba1000 rwxp b7b60000 00:00 0 
b7ba2000-b7d17000 r-xp 00000000 08:01 1811528    /usr/lib/locale/locale-archive
b7d17000-b7d9a000 rwxp b7d17000 00:00 0 
b7d9a000-b7eef000 r-xp 00000000 08:01 1795289    /lib/i686/cmov/libc-2.7.so
b7eef000-b7ef0000 r-xp 00155000 08:01 1795289    /lib/i686/cmov/libc-2.7.so
b7ef0000-b7ef2000 rwxp 00156000 08:01 1795289    /lib/i686/cmov/libc-2.7.so
b7ef2000-b7ef5000 rwxp b7ef2000 00:00 0 
b7ef5000-b7f19000 r-xp 00000000 08:01 1795296    /lib/i686/cmov/libm-2.7.so
b7f19000-b7f1b000 rwxp 00023000 08:01 1795296    /lib/i686/cmov/libm-2.7.so
b7f1b000-b7f1d000 r-xp 00000000 08:01 1795320    /lib/i686/cmov/libutil-2.7.so
b7f1d000-b7f1f000 rwxp 00001000 08:01 1795320    /lib/i686/cmov/libutil-2.7.so
b7f1f000-b7f20000 rwxp b7f1f000 00:00 0 
b7f20000-b7f22000 r-xp 00000000 08:01 1795295    /lib/i686/cmov/libdl-2.7.so
b7f22000-b7f24000 rwxp 00001000 08:01 1795295    /lib/i686/cmov/libdl-2.7.so
b7f24000-b7f39000 r-xp 00000000 08:01 1795308    
/lib/i686/cmov/libpthread-2.7.so
b7f39000-b7f3b000 rwxp 00014000 08:01 1795308    
/lib/i686/cmov/libpthread-2.7.so
b7f3b000-b7f3e000 rwxp b7f3b000 00:00 0 
b7f3e000-b7f44000 r-xp 00000000 08:01 1550531    
/usr/lib/python2.5/lib-dynload/collections_d.so
b7f44000-b7f45000 rwxp 00006000 08:01 1550531    
/usr/lib/python2.5/lib-dynload/collections_d.so
b7f45000-b7f48000 r-xp 00000000 08:01 1550529    
/usr/lib/python2.5/lib-dynload/cStringIO_d.so
b7f48000-b7f49000 rwxp 00003000 08:01 1550529    
/usr/lib/python2.5/lib-dynload/cStringIO_d.so
b7f49000-b7f4e000 r-xp 00000000 08:01 1550677    
/usr/lib/python2.5/lib-dynload/strop_d.so
b7f4e000-b7f50000 rwxp 00004000 08:01 1550677    
/usr/lib/python2.5/lib-dynload/strop_d.so
b7f50000-b7f53000 r-xp 00000000 08:01 1550686    
/usr/lib/python2.5/lib-dynload/time_d.so
b7f53000-b7f55000 rwxp 00003000 08:01 1550686    
/usr/lib/python2.5/lib-dynload/time_d.so
b7f55000-b7f57000 rwxp b7f55000 00:00 0 
b7f57000-b7f58000 r-xp b7f57000 00:00 0          [vdso]
b7f58000-b7f72000 r-xp 00000000 08:01 1729995    /lib/ld-2.7.so
b7f72000-b7f74000 rwxp 0001a000 08:01 1729995    /lib/ld-2.7.so
bfbf7000-bfc27000 rw-p bffd0000 00:00 0          [stack]


The bug also occurs if the document is empty. The schema I used is at 
http://svn.ling.su.se/treealigner/trunk/data/schema/TigerXML.xsd (there are two 
more
XSD files in this directory which are referenced by the main schema).



best,


Torsten



--- System information. ---
Architecture: i386
Kernel:       Linux 2.6.24-shl4

Debian Release: lenny/sid
  500 unstable        www.debian-multimedia.org 
  500 unstable        ftp.de.debian.org 
  500 experimental    www.debian-multimedia.org 
    1 experimental    ftp.de.debian.org 

--- Package information. ---
Depends              (Version) | Installed
==============================-+-============
libc6               (>= 2.7-1) | 2.7-9
libxml2            (>= 2.6.27) | 2.6.31.dfsg-2
libxslt1.1         (>= 1.1.18) | 1.1.22-1
python                (>= 2.4) | 2.4.4-6
python                (<< 2.6) | 2.4.4-6
python-central        (>= 0.6) | 0.6.1
zlib1g                         | 1:1.2.3.3.dfsg-11

Attachment: signature.asc
Description: Dies ist ein digital signierter Nachrichtenteil

Reply via email to