[lxml-dev] Segfault on XSLT/XPath undefined variable error.
John Krukoff
jkrukoff at ltgc.com
Wed Aug 6 20:55:27 CEST 2008
On Fri, 2008-08-01 at 08:47 +0200, Stefan Behnel wrote:
> Hi,
>
> John Krukoff wrote:
> > Okay, can only get it to crash when first signing a document using
> > libxmlsec, so I suppose I'll simply assume that the two libraries use
> > the error log in incompatible ways.
>
> could you check if this patch makes it work better for you? It basically
> restricts XSLT error logging to the lifetime of an XSL transformation.
>
> Stefan
>
I still need to compile lxml with -ggdb, where do I stick that in the
setup.py/makefile?
Interestingly, this is after I've switched to calling an external C#
program to do my xml signing, and am no longer using libxmlsec.
But, anyway, still crashed with the patch for me:
Core was generated by `/usr/bin/python -tt ./Adapter.py'.
Program terminated with signal 11, Segmentation fault.
#0 0xb774b740 in __pyx_f_4lxml_5etree__forwardError ()
from /usr/lib/python2.5/site-packages/lxml-2.1.1-py2.5-linux-i686.egg/lxml/etree.so
(gdb) bt
#0 0xb774b740 in __pyx_f_4lxml_5etree__forwardError ()
from /usr/lib/python2.5/site-packages/lxml-2.1.1-py2.5-linux-i686.egg/lxml/etree.so
#1 0xb774bb12 in __pyx_f_4lxml_5etree__receiveXSLTError ()
from /usr/lib/python2.5/site-packages/lxml-2.1.1-py2.5-linux-i686.egg/lxml/etree.so
#2 0xb76baef9 in xsltPrintErrorContext () from /usr/lib/libxslt.so.1
#3 0xb76bb091 in xsltTransformError () from /usr/lib/libxslt.so.1
#4 0xb76dd434 in xsltValueOf () from /usr/lib/libxslt.so.1
#5 0xb76da5ba in ?? () from /usr/lib/libxslt.so.1
#6 0x0878e718 in ?? ()
#7 0x08432c60 in ?? ()
#8 0x0878ec78 in ?? ()
#9 0x0878f6f8 in ?? ()
#10 0x00000000 in ?? ()
Fortunately, I've been able to simplify my crash conditions somewhat, so
the valgrind log is significantly shorter.
Looks like I'll need to find some time to work on that test case after
all.
--
John Krukoff <jkrukoff at ltgc.com>
Land Title Guarantee Company
-------------- next part --------------
==3894== Memcheck, a memory error detector.
==3894== Copyright (C) 2002-2007, and GNU GPL'd, by Julian Seward et al.
==3894== Using LibVEX rev 1732, a library for dynamic binary translation.
==3894== Copyright (C) 2004-2007, and GNU GPL'd, by OpenWorks LLP.
==3894== Using valgrind-3.2.3, a dynamic binary instrumentation framework.
==3894== Copyright (C) 2000-2007, and GNU GPL'd, by Julian Seward et al.
==3894== For more details, rerun with: -v
==3894==
==3894== My PID = 3894, parent PID = 10649. Prog and args are:
==3894== python
==3894== -E
==3894== -tt
==3894== ./Adapter.py
==3894==
==3894== Invalid read of size 4
==3894== at 0x40153D9: (within /lib/ld-2.6.1.so)
==3894== by 0x4006337: (within /lib/ld-2.6.1.so)
==3894== by 0x4008217: (within /lib/ld-2.6.1.so)
==3894== by 0x40118C3: (within /lib/ld-2.6.1.so)
==3894== by 0x400D891: (within /lib/ld-2.6.1.so)
==3894== by 0x40112CD: (within /lib/ld-2.6.1.so)
==3894== by 0x41A6C4C: (within /lib/libdl-2.6.1.so)
==3894== by 0x400D891: (within /lib/ld-2.6.1.so)
==3894== by 0x41A70EB: (within /lib/libdl-2.6.1.so)
==3894== by 0x41A6B80: dlopen (in /lib/libdl-2.6.1.so)
==3894== by 0x4126245: _PyImport_GetDynLoadFunc (in /usr/lib/libpython2.5.so.1.0)
==3894== by 0x4113698: _PyImport_LoadDynamicModule (in /usr/lib/libpython2.5.so.1.0)
==3894== Address 0x44C1A9C is 36 bytes inside a block of size 39 alloc'd
==3894== at 0x4022760: malloc (in /usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==3894== by 0x4007715: (within /lib/ld-2.6.1.so)
==3894== by 0x4008156: (within /lib/ld-2.6.1.so)
==3894== by 0x40118C3: (within /lib/ld-2.6.1.so)
==3894== by 0x400D891: (within /lib/ld-2.6.1.so)
==3894== by 0x40112CD: (within /lib/ld-2.6.1.so)
==3894== by 0x41A6C4C: (within /lib/libdl-2.6.1.so)
==3894== by 0x400D891: (within /lib/ld-2.6.1.so)
==3894== by 0x41A70EB: (within /lib/libdl-2.6.1.so)
==3894== by 0x41A6B80: dlopen (in /lib/libdl-2.6.1.so)
==3894== by 0x4126245: _PyImport_GetDynLoadFunc (in /usr/lib/libpython2.5.so.1.0)
==3894== by 0x4113698: _PyImport_LoadDynamicModule (in /usr/lib/libpython2.5.so.1.0)
==3894==
==3894== Invalid read of size 4
==3894== at 0x40153F0: (within /lib/ld-2.6.1.so)
==3894== by 0x4006337: (within /lib/ld-2.6.1.so)
==3894== by 0x4008217: (within /lib/ld-2.6.1.so)
==3894== by 0x40118C3: (within /lib/ld-2.6.1.so)
==3894== by 0x400D891: (within /lib/ld-2.6.1.so)
==3894== by 0x40112CD: (within /lib/ld-2.6.1.so)
==3894== by 0x41A6C4C: (within /lib/libdl-2.6.1.so)
==3894== by 0x400D891: (within /lib/ld-2.6.1.so)
==3894== by 0x41A70EB: (within /lib/libdl-2.6.1.so)
==3894== by 0x41A6B80: dlopen (in /lib/libdl-2.6.1.so)
==3894== by 0x4126245: _PyImport_GetDynLoadFunc (in /usr/lib/libpython2.5.so.1.0)
==3894== by 0x4113698: _PyImport_LoadDynamicModule (in /usr/lib/libpython2.5.so.1.0)
==3894== Address 0x44C8C78 is 40 bytes inside a block of size 42 alloc'd
==3894== at 0x4022760: malloc (in /usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==3894== by 0x4007715: (within /lib/ld-2.6.1.so)
==3894== by 0x4008156: (within /lib/ld-2.6.1.so)
==3894== by 0x40118C3: (within /lib/ld-2.6.1.so)
==3894== by 0x400D891: (within /lib/ld-2.6.1.so)
==3894== by 0x40112CD: (within /lib/ld-2.6.1.so)
==3894== by 0x41A6C4C: (within /lib/libdl-2.6.1.so)
==3894== by 0x400D891: (within /lib/ld-2.6.1.so)
==3894== by 0x41A70EB: (within /lib/libdl-2.6.1.so)
==3894== by 0x41A6B80: dlopen (in /lib/libdl-2.6.1.so)
==3894== by 0x4126245: _PyImport_GetDynLoadFunc (in /usr/lib/libpython2.5.so.1.0)
==3894== by 0x4113698: _PyImport_LoadDynamicModule (in /usr/lib/libpython2.5.so.1.0)
==3894==
==3894== Invalid read of size 4
==3894== at 0x40153F0: (within /lib/ld-2.6.1.so)
==3894== by 0x4006337: (within /lib/ld-2.6.1.so)
==3894== by 0x4008217: (within /lib/ld-2.6.1.so)
==3894== by 0x400BF55: (within /lib/ld-2.6.1.so)
==3894== by 0x400D891: (within /lib/ld-2.6.1.so)
==3894== by 0x400C14F: (within /lib/ld-2.6.1.so)
==3894== by 0x401191E: (within /lib/ld-2.6.1.so)
==3894== by 0x400D891: (within /lib/ld-2.6.1.so)
==3894== by 0x40112CD: (within /lib/ld-2.6.1.so)
==3894== by 0x41A6C4C: (within /lib/libdl-2.6.1.so)
==3894== by 0x400D891: (within /lib/ld-2.6.1.so)
==3894== by 0x41A70EB: (within /lib/libdl-2.6.1.so)
==3894== Address 0x44D18E8 is 24 bytes inside a block of size 25 alloc'd
==3894== at 0x4022760: malloc (in /usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==3894== by 0x40087B8: (within /lib/ld-2.6.1.so)
==3894== by 0x400BF55: (within /lib/ld-2.6.1.so)
==3894== by 0x400D891: (within /lib/ld-2.6.1.so)
==3894== by 0x400C14F: (within /lib/ld-2.6.1.so)
==3894== by 0x401191E: (within /lib/ld-2.6.1.so)
==3894== by 0x400D891: (within /lib/ld-2.6.1.so)
==3894== by 0x40112CD: (within /lib/ld-2.6.1.so)
==3894== by 0x41A6C4C: (within /lib/libdl-2.6.1.so)
==3894== by 0x400D891: (within /lib/ld-2.6.1.so)
==3894== by 0x41A70EB: (within /lib/libdl-2.6.1.so)
==3894== by 0x41A6B80: dlopen (in /lib/libdl-2.6.1.so)
==3894==
==3894== Invalid read of size 4
==3894== at 0x4015407: (within /lib/ld-2.6.1.so)
==3894== by 0x4006337: (within /lib/ld-2.6.1.so)
==3894== by 0x4008217: (within /lib/ld-2.6.1.so)
==3894== by 0x40118C3: (within /lib/ld-2.6.1.so)
==3894== by 0x400D891: (within /lib/ld-2.6.1.so)
==3894== by 0x40112CD: (within /lib/ld-2.6.1.so)
==3894== by 0x41A6C4C: (within /lib/libdl-2.6.1.so)
==3894== by 0x400D891: (within /lib/ld-2.6.1.so)
==3894== by 0x41A70EB: (within /lib/libdl-2.6.1.so)
==3894== by 0x41A6B80: dlopen (in /lib/libdl-2.6.1.so)
==3894== by 0x481E1C6: (within /usr/lib/libcrypto.so.0.9.8)
==3894== by 0x481F14F: DSO_load (in /usr/lib/libcrypto.so.0.9.8)
==3894== Address 0x44F410C is 12 bytes inside a block of size 13 alloc'd
==3894== at 0x4022760: malloc (in /usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==3894== by 0x40087B8: (within /lib/ld-2.6.1.so)
==3894== by 0x40118C3: (within /lib/ld-2.6.1.so)
==3894== by 0x400D891: (within /lib/ld-2.6.1.so)
==3894== by 0x40112CD: (within /lib/ld-2.6.1.so)
==3894== by 0x41A6C4C: (within /lib/libdl-2.6.1.so)
==3894== by 0x400D891: (within /lib/ld-2.6.1.so)
==3894== by 0x41A70EB: (within /lib/libdl-2.6.1.so)
==3894== by 0x41A6B80: dlopen (in /lib/libdl-2.6.1.so)
==3894== by 0x481E1C6: (within /usr/lib/libcrypto.so.0.9.8)
==3894== by 0x481F14F: DSO_load (in /usr/lib/libcrypto.so.0.9.8)
==3894== by 0x4893829: COMP_zlib (in /usr/lib/libcrypto.so.0.9.8)
==3894==
==3894== Invalid read of size 4
==3894== at 0x40153D9: (within /lib/ld-2.6.1.so)
==3894== by 0x4006337: (within /lib/ld-2.6.1.so)
==3894== by 0x4008217: (within /lib/ld-2.6.1.so)
==3894== by 0x400BF55: (within /lib/ld-2.6.1.so)
==3894== by 0x400D891: (within /lib/ld-2.6.1.so)
==3894== by 0x400C14F: (within /lib/ld-2.6.1.so)
==3894== by 0x401191E: (within /lib/ld-2.6.1.so)
==3894== by 0x400D891: (within /lib/ld-2.6.1.so)
==3894== by 0x40112CD: (within /lib/ld-2.6.1.so)
==3894== by 0x41A6C4C: (within /lib/libdl-2.6.1.so)
==3894== by 0x400D891: (within /lib/ld-2.6.1.so)
==3894== by 0x41A70EB: (within /lib/libdl-2.6.1.so)
==3894== Address 0x4A5EF14 is 20 bytes inside a block of size 22 alloc'd
==3894== at 0x4022760: malloc (in /usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==3894== by 0x40087B8: (within /lib/ld-2.6.1.so)
==3894== by 0x400BF55: (within /lib/ld-2.6.1.so)
==3894== by 0x400D891: (within /lib/ld-2.6.1.so)
==3894== by 0x400C14F: (within /lib/ld-2.6.1.so)
==3894== by 0x401191E: (within /lib/ld-2.6.1.so)
==3894== by 0x400D891: (within /lib/ld-2.6.1.so)
==3894== by 0x40112CD: (within /lib/ld-2.6.1.so)
==3894== by 0x41A6C4C: (within /lib/libdl-2.6.1.so)
==3894== by 0x400D891: (within /lib/ld-2.6.1.so)
==3894== by 0x41A70EB: (within /lib/libdl-2.6.1.so)
==3894== by 0x41A6B80: dlopen (in /lib/libdl-2.6.1.so)
==3894==
==3894== Invalid read of size 4
==3894== at 0x40153F0: (within /lib/ld-2.6.1.so)
==3894== by 0x40078CB: (within /lib/ld-2.6.1.so)
==3894== by 0x4007E71: (within /lib/ld-2.6.1.so)
==3894== by 0x4008471: (within /lib/ld-2.6.1.so)
==3894== by 0x400BF55: (within /lib/ld-2.6.1.so)
==3894== by 0x400D891: (within /lib/ld-2.6.1.so)
==3894== by 0x400C14F: (within /lib/ld-2.6.1.so)
==3894== by 0x401191E: (within /lib/ld-2.6.1.so)
==3894== by 0x400D891: (within /lib/ld-2.6.1.so)
==3894== by 0x40112CD: (within /lib/ld-2.6.1.so)
==3894== by 0x41A6C4C: (within /lib/libdl-2.6.1.so)
==3894== by 0x400D891: (within /lib/ld-2.6.1.so)
==3894== Address 0x441D328 is 8 bytes inside a block of size 9 alloc'd
==3894== at 0x4022760: malloc (in /usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==3894== by 0x4007715: (within /lib/ld-2.6.1.so)
==3894== by 0x4007855: (within /lib/ld-2.6.1.so)
==3894== by 0x4007E71: (within /lib/ld-2.6.1.so)
==3894== by 0x4008471: (within /lib/ld-2.6.1.so)
==3894== by 0x400BF55: (within /lib/ld-2.6.1.so)
==3894== by 0x400D891: (within /lib/ld-2.6.1.so)
==3894== by 0x400C14F: (within /lib/ld-2.6.1.so)
==3894== by 0x401191E: (within /lib/ld-2.6.1.so)
==3894== by 0x400D891: (within /lib/ld-2.6.1.so)
==3894== by 0x40112CD: (within /lib/ld-2.6.1.so)
==3894== by 0x41A6C4C: (within /lib/libdl-2.6.1.so)
==3894==
==3894== Invalid read of size 4
==3894== at 0x4015407: (within /lib/ld-2.6.1.so)
==3894== by 0x4006337: (within /lib/ld-2.6.1.so)
==3894== by 0x4008217: (within /lib/ld-2.6.1.so)
==3894== by 0x400BF55: (within /lib/ld-2.6.1.so)
==3894== by 0x400D891: (within /lib/ld-2.6.1.so)
==3894== by 0x400C14F: (within /lib/ld-2.6.1.so)
==3894== by 0x401191E: (within /lib/ld-2.6.1.so)
==3894== by 0x400D891: (within /lib/ld-2.6.1.so)
==3894== by 0x40112CD: (within /lib/ld-2.6.1.so)
==3894== by 0x41A6C4C: (within /lib/libdl-2.6.1.so)
==3894== by 0x400D891: (within /lib/ld-2.6.1.so)
==3894== by 0x41A70EB: (within /lib/libdl-2.6.1.so)
==3894== Address 0x4434C04 is 28 bytes inside a block of size 29 alloc'd
==3894== at 0x4022760: malloc (in /usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==3894== by 0x40087B8: (within /lib/ld-2.6.1.so)
==3894== by 0x400BF55: (within /lib/ld-2.6.1.so)
==3894== by 0x400D891: (within /lib/ld-2.6.1.so)
==3894== by 0x400C14F: (within /lib/ld-2.6.1.so)
==3894== by 0x401191E: (within /lib/ld-2.6.1.so)
==3894== by 0x400D891: (within /lib/ld-2.6.1.so)
==3894== by 0x40112CD: (within /lib/ld-2.6.1.so)
==3894== by 0x41A6C4C: (within /lib/libdl-2.6.1.so)
==3894== by 0x400D891: (within /lib/ld-2.6.1.so)
==3894== by 0x41A70EB: (within /lib/libdl-2.6.1.so)
==3894== by 0x41A6B80: dlopen (in /lib/libdl-2.6.1.so)
==3894==
==3894== Invalid read of size 4
==3894== at 0x4B33616: __pyx_f_4lxml_5etree_moveNodeToDocument (in /usr/lib/python2.5/site-packages/lxml-2.1.1-py2.5-linux-i686.egg/lxml/etree.so)
==3894== by 0x4B3F1CF: __pyx_f_4lxml_5etree__appendChild (in /usr/lib/python2.5/site-packages/lxml-2.1.1-py2.5-linux-i686.egg/lxml/etree.so)
==3894== by 0x4B163C7: __pyx_pf_4lxml_5etree_8_Element_append (in /usr/lib/python2.5/site-packages/lxml-2.1.1-py2.5-linux-i686.egg/lxml/etree.so)
==3894== by 0x40F7FD9: (within /usr/lib/libpython2.5.so.1.0)
==3894== by 0x40F4E76: PyEval_EvalFrameEx (in /usr/lib/libpython2.5.so.1.0)
==3894== by 0x40F666C: PyEval_EvalCodeEx (in /usr/lib/libpython2.5.so.1.0)
==3894== by 0x40F8510: (within /usr/lib/libpython2.5.so.1.0)
==3894== by 0x40F8285: (within /usr/lib/libpython2.5.so.1.0)
==3894== by 0x40F4E76: PyEval_EvalFrameEx (in /usr/lib/libpython2.5.so.1.0)
==3894== by 0x40F666C: PyEval_EvalCodeEx (in /usr/lib/libpython2.5.so.1.0)
==3894== by 0x40F8510: (within /usr/lib/libpython2.5.so.1.0)
==3894== by 0x40F8285: (within /usr/lib/libpython2.5.so.1.0)
==3894== Address 0x4A89380 is 80 bytes inside a block of size 88 free'd
==3894== at 0x402237A: free (in /usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==3894== by 0x4CBA69A: xmlFreeDoc (in /usr/lib/libxml2.so.2.6.31)
==3894== by 0x4B1094E: __pyx_pf_4lxml_5etree_9_Document___dealloc__ (in /usr/lib/python2.5/site-packages/lxml-2.1.1-py2.5-linux-i686.egg/lxml/etree.so)
==3894== by 0x4BB831E: __pyx_tp_dealloc_4lxml_5etree__Document (in /usr/lib/python2.5/site-packages/lxml-2.1.1-py2.5-linux-i686.egg/lxml/etree.so)
==3894== by 0x4B337F9: __pyx_f_4lxml_5etree__updateProxyDocument (in /usr/lib/python2.5/site-packages/lxml-2.1.1-py2.5-linux-i686.egg/lxml/etree.so)
==3894== by 0x4B33544: __pyx_f_4lxml_5etree_moveNodeToDocument (in /usr/lib/python2.5/site-packages/lxml-2.1.1-py2.5-linux-i686.egg/lxml/etree.so)
==3894== by 0x4B3F1CF: __pyx_f_4lxml_5etree__appendChild (in /usr/lib/python2.5/site-packages/lxml-2.1.1-py2.5-linux-i686.egg/lxml/etree.so)
==3894== by 0x4B163C7: __pyx_pf_4lxml_5etree_8_Element_append (in /usr/lib/python2.5/site-packages/lxml-2.1.1-py2.5-linux-i686.egg/lxml/etree.so)
==3894== by 0x40F7FD9: (within /usr/lib/libpython2.5.so.1.0)
==3894== by 0x40F4E76: PyEval_EvalFrameEx (in /usr/lib/libpython2.5.so.1.0)
==3894== by 0x40F666C: PyEval_EvalCodeEx (in /usr/lib/libpython2.5.so.1.0)
==3894== by 0x40F8510: (within /usr/lib/libpython2.5.so.1.0)
==3894==
==3894== Invalid read of size 4
==3894== at 0x4B33616: __pyx_f_4lxml_5etree_moveNodeToDocument (in /usr/lib/python2.5/site-packages/lxml-2.1.1-py2.5-linux-i686.egg/lxml/etree.so)
==3894== by 0x4B3F1CF: __pyx_f_4lxml_5etree__appendChild (in /usr/lib/python2.5/site-packages/lxml-2.1.1-py2.5-linux-i686.egg/lxml/etree.so)
==3894== by 0x4B3ED88: __pyx_f_4lxml_5etree__replaceSlice (in /usr/lib/python2.5/site-packages/lxml-2.1.1-py2.5-linux-i686.egg/lxml/etree.so)
==3894== by 0x4B15607: __pyx_pf_4lxml_5etree_8_Element___setitem__ (in /usr/lib/python2.5/site-packages/lxml-2.1.1-py2.5-linux-i686.egg/lxml/etree.so)
==3894== by 0x4BB8C08: __pyx_mp_ass_subscript_4lxml_5etree__Element (in /usr/lib/python2.5/site-packages/lxml-2.1.1-py2.5-linux-i686.egg/lxml/etree.so)
==3894== by 0x4060DDB: PyObject_SetItem (in /usr/lib/libpython2.5.so.1.0)
==3894== by 0x40F920E: (within /usr/lib/libpython2.5.so.1.0)
==3894== by 0x40F2244: PyEval_EvalFrameEx (in /usr/lib/libpython2.5.so.1.0)
==3894== by 0x40F666C: PyEval_EvalCodeEx (in /usr/lib/libpython2.5.so.1.0)
==3894== by 0x40F8510: (within /usr/lib/libpython2.5.so.1.0)
==3894== by 0x40F8285: (within /usr/lib/libpython2.5.so.1.0)
==3894== by 0x40F4E76: PyEval_EvalFrameEx (in /usr/lib/libpython2.5.so.1.0)
==3894== Address 0x4A935F0 is 80 bytes inside a block of size 88 free'd
==3894== at 0x402237A: free (in /usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==3894== by 0x4CBA69A: xmlFreeDoc (in /usr/lib/libxml2.so.2.6.31)
==3894== by 0x4B1094E: __pyx_pf_4lxml_5etree_9_Document___dealloc__ (in /usr/lib/python2.5/site-packages/lxml-2.1.1-py2.5-linux-i686.egg/lxml/etree.so)
==3894== by 0x4BB831E: __pyx_tp_dealloc_4lxml_5etree__Document (in /usr/lib/python2.5/site-packages/lxml-2.1.1-py2.5-linux-i686.egg/lxml/etree.so)
==3894== by 0x4B337F9: __pyx_f_4lxml_5etree__updateProxyDocument (in /usr/lib/python2.5/site-packages/lxml-2.1.1-py2.5-linux-i686.egg/lxml/etree.so)
==3894== by 0x4B33544: __pyx_f_4lxml_5etree_moveNodeToDocument (in /usr/lib/python2.5/site-packages/lxml-2.1.1-py2.5-linux-i686.egg/lxml/etree.so)
==3894== by 0x4B3F1CF: __pyx_f_4lxml_5etree__appendChild (in /usr/lib/python2.5/site-packages/lxml-2.1.1-py2.5-linux-i686.egg/lxml/etree.so)
==3894== by 0x4B3ED88: __pyx_f_4lxml_5etree__replaceSlice (in /usr/lib/python2.5/site-packages/lxml-2.1.1-py2.5-linux-i686.egg/lxml/etree.so)
==3894== by 0x4B15607: __pyx_pf_4lxml_5etree_8_Element___setitem__ (in /usr/lib/python2.5/site-packages/lxml-2.1.1-py2.5-linux-i686.egg/lxml/etree.so)
==3894== by 0x4BB8C08: __pyx_mp_ass_subscript_4lxml_5etree__Element (in /usr/lib/python2.5/site-packages/lxml-2.1.1-py2.5-linux-i686.egg/lxml/etree.so)
==3894== by 0x4060DDB: PyObject_SetItem (in /usr/lib/libpython2.5.so.1.0)
==3894== by 0x40F920E: (within /usr/lib/libpython2.5.so.1.0)
==3894==
==3894== Invalid read of size 4
==3894== at 0x4B33616: __pyx_f_4lxml_5etree_moveNodeToDocument (in /usr/lib/python2.5/site-packages/lxml-2.1.1-py2.5-linux-i686.egg/lxml/etree.so)
==3894== by 0x4B17447: __pyx_pf_4lxml_5etree_8_Element_replace (in /usr/lib/python2.5/site-packages/lxml-2.1.1-py2.5-linux-i686.egg/lxml/etree.so)
==3894== by 0x409A67D: PyCFunction_Call (in /usr/lib/libpython2.5.so.1.0)
==3894== by 0x40F8189: (within /usr/lib/libpython2.5.so.1.0)
==3894== by 0x40F4E76: PyEval_EvalFrameEx (in /usr/lib/libpython2.5.so.1.0)
==3894== by 0x40F666C: PyEval_EvalCodeEx (in /usr/lib/libpython2.5.so.1.0)
==3894== by 0x40F8510: (within /usr/lib/libpython2.5.so.1.0)
==3894== by 0x40F8285: (within /usr/lib/libpython2.5.so.1.0)
==3894== by 0x40F4E76: PyEval_EvalFrameEx (in /usr/lib/libpython2.5.so.1.0)
==3894== by 0x40F666C: PyEval_EvalCodeEx (in /usr/lib/libpython2.5.so.1.0)
==3894== by 0x40F8510: (within /usr/lib/libpython2.5.so.1.0)
==3894== by 0x40F8285: (within /usr/lib/libpython2.5.so.1.0)
==3894== Address 0x4F175C0 is 80 bytes inside a block of size 88 free'd
==3894== at 0x402237A: free (in /usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==3894== by 0x4CBA69A: xmlFreeDoc (in /usr/lib/libxml2.so.2.6.31)
==3894== by 0x4B1094E: __pyx_pf_4lxml_5etree_9_Document___dealloc__ (in /usr/lib/python2.5/site-packages/lxml-2.1.1-py2.5-linux-i686.egg/lxml/etree.so)
==3894== by 0x4BB831E: __pyx_tp_dealloc_4lxml_5etree__Document (in /usr/lib/python2.5/site-packages/lxml-2.1.1-py2.5-linux-i686.egg/lxml/etree.so)
==3894== by 0x4B337F9: __pyx_f_4lxml_5etree__updateProxyDocument (in /usr/lib/python2.5/site-packages/lxml-2.1.1-py2.5-linux-i686.egg/lxml/etree.so)
==3894== by 0x4B333E7: __pyx_f_4lxml_5etree_moveNodeToDocument (in /usr/lib/python2.5/site-packages/lxml-2.1.1-py2.5-linux-i686.egg/lxml/etree.so)
==3894== by 0x4B17447: __pyx_pf_4lxml_5etree_8_Element_replace (in /usr/lib/python2.5/site-packages/lxml-2.1.1-py2.5-linux-i686.egg/lxml/etree.so)
==3894== by 0x409A67D: PyCFunction_Call (in /usr/lib/libpython2.5.so.1.0)
==3894== by 0x40F8189: (within /usr/lib/libpython2.5.so.1.0)
==3894== by 0x40F4E76: PyEval_EvalFrameEx (in /usr/lib/libpython2.5.so.1.0)
==3894== by 0x40F666C: PyEval_EvalCodeEx (in /usr/lib/libpython2.5.so.1.0)
==3894== by 0x40F8510: (within /usr/lib/libpython2.5.so.1.0)
==3894==
==3894== Invalid read of size 4
==3894== at 0x40153C3: (within /lib/ld-2.6.1.so)
==3894== by 0x4006337: (within /lib/ld-2.6.1.so)
==3894== by 0x4008217: (within /lib/ld-2.6.1.so)
==3894== by 0x400BF55: (within /lib/ld-2.6.1.so)
==3894== by 0x400D891: (within /lib/ld-2.6.1.so)
==3894== by 0x400C14F: (within /lib/ld-2.6.1.so)
==3894== by 0x401191E: (within /lib/ld-2.6.1.so)
==3894== by 0x400D891: (within /lib/ld-2.6.1.so)
==3894== by 0x40112CD: (within /lib/ld-2.6.1.so)
==3894== by 0x41A787C: (within /lib/libdl-2.6.1.so)
==3894== by 0x400D891: (within /lib/ld-2.6.1.so)
==3894== by 0x41A70EB: (within /lib/libdl-2.6.1.so)
==3894== Address 0x53D46E0 is 48 bytes inside a block of size 51 alloc'd
==3894== at 0x4022760: malloc (in /usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==3894== by 0x40087B8: (within /lib/ld-2.6.1.so)
==3894== by 0x400BF55: (within /lib/ld-2.6.1.so)
==3894== by 0x400D891: (within /lib/ld-2.6.1.so)
==3894== by 0x400C14F: (within /lib/ld-2.6.1.so)
==3894== by 0x401191E: (within /lib/ld-2.6.1.so)
==3894== by 0x400D891: (within /lib/ld-2.6.1.so)
==3894== by 0x40112CD: (within /lib/ld-2.6.1.so)
==3894== by 0x41A787C: (within /lib/libdl-2.6.1.so)
==3894== by 0x400D891: (within /lib/ld-2.6.1.so)
==3894== by 0x41A70EB: (within /lib/libdl-2.6.1.so)
==3894== by 0x41A78F7: dlopen (in /lib/libdl-2.6.1.so)
==3894==
==3894== Invalid read of size 4
==3894== at 0x4B4C740: __pyx_f_4lxml_5etree__forwardError (in /usr/lib/python2.5/site-packages/lxml-2.1.1-py2.5-linux-i686.egg/lxml/etree.so)
==3894== by 0x4B4CB11: __pyx_f_4lxml_5etree__receiveXSLTError (in /usr/lib/python2.5/site-packages/lxml-2.1.1-py2.5-linux-i686.egg/lxml/etree.so)
==3894== by 0x4C2BEF8: xsltPrintErrorContext (in /usr/lib/libxslt.so.1.1.24)
==3894== by 0x4C2C090: xsltTransformError (in /usr/lib/libxslt.so.1.1.24)
==3894== by 0x4C4E433: xsltValueOf (in /usr/lib/libxslt.so.1.1.24)
==3894== by 0x4C4B5B9: (within /usr/lib/libxslt.so.1.1.24)
==3894== by 0x4C4BF5A: (within /usr/lib/libxslt.so.1.1.24)
==3894== by 0x4C4AFFA: xsltProcessOneNode (in /usr/lib/libxslt.so.1.1.24)
==3894== by 0x4C504C9: (within /usr/lib/libxslt.so.1.1.24)
==3894== by 0x4C50A46: xsltApplyStylesheetUser (in /usr/lib/libxslt.so.1.1.24)
==3894== by 0x4BA8D33: __pyx_f_4lxml_5etree_4XSLT__run_transform (in /usr/lib/python2.5/site-packages/lxml-2.1.1-py2.5-linux-i686.egg/lxml/etree.so)
==3894== by 0x4BA6DDF: __pyx_pf_4lxml_5etree_4XSLT___call__ (in /usr/lib/python2.5/site-packages/lxml-2.1.1-py2.5-linux-i686.egg/lxml/etree.so)
==3894== Address 0x706D6F43 is not stack'd, malloc'd or (recently) free'd
==3894==
==3894== Process terminating with default action of signal 11 (SIGSEGV): dumping core
==3894== Access not within mapped region at address 0x706D6F43
==3894== at 0x4B4C740: __pyx_f_4lxml_5etree__forwardError (in /usr/lib/python2.5/site-packages/lxml-2.1.1-py2.5-linux-i686.egg/lxml/etree.so)
==3894== by 0x4B4CB11: __pyx_f_4lxml_5etree__receiveXSLTError (in /usr/lib/python2.5/site-packages/lxml-2.1.1-py2.5-linux-i686.egg/lxml/etree.so)
==3894== by 0x4C2BEF8: xsltPrintErrorContext (in /usr/lib/libxslt.so.1.1.24)
==3894== by 0x4C2C090: xsltTransformError (in /usr/lib/libxslt.so.1.1.24)
==3894== by 0x4C4E433: xsltValueOf (in /usr/lib/libxslt.so.1.1.24)
==3894== by 0x4C4B5B9: (within /usr/lib/libxslt.so.1.1.24)
==3894== by 0x4C4BF5A: (within /usr/lib/libxslt.so.1.1.24)
==3894== by 0x4C4AFFA: xsltProcessOneNode (in /usr/lib/libxslt.so.1.1.24)
==3894== by 0x4C504C9: (within /usr/lib/libxslt.so.1.1.24)
==3894== by 0x4C50A46: xsltApplyStylesheetUser (in /usr/lib/libxslt.so.1.1.24)
==3894== by 0x4BA8D33: __pyx_f_4lxml_5etree_4XSLT__run_transform (in /usr/lib/python2.5/site-packages/lxml-2.1.1-py2.5-linux-i686.egg/lxml/etree.so)
==3894== by 0x4BA6DDF: __pyx_pf_4lxml_5etree_4XSLT___call__ (in /usr/lib/python2.5/site-packages/lxml-2.1.1-py2.5-linux-i686.egg/lxml/etree.so)
==3894==
==3894== ERROR SUMMARY: 84 errors from 12 contexts (suppressed: 2539 from 7)
==3894== malloc/free: in use at exit: 24,884,229 bytes in 21,299 blocks.
==3894== malloc/free: 142,314 allocs, 121,015 frees, 3,738,145,080 bytes allocated.
==3894== For counts of detected errors, rerun with: -v
==3894== searching for pointers to 21,299 not-freed blocks.
==3894== checked 24,614,252 bytes.
==3894==
==3894== LEAK SUMMARY:
==3894== definitely lost: 240,366 bytes in 2,990 blocks.
==3894== possibly lost: 372,325 bytes in 628 blocks.
==3894== still reachable: 24,271,538 bytes in 17,681 blocks.
==3894== suppressed: 0 bytes in 0 blocks.
==3894== Rerun with --leak-check=full to see details of leaked memory.
More information about the lxml-dev
mailing list