[XML-SIG] Does this code segfault for you?
Dave
dwallace23@comcast.com
Fri, 05 Apr 2002 22:27:11 -0500
The following code (painstakingly adapted from a similar pattern used in
ZSI) causes a segfault with PyXML built from cvs HEAD & v070 but seems
to run ok with v066 and earlier. This is with Python 2.2.1rc2 on Linux.
(I tested also with Python 1.5 w/ PyXML 0.5.2, it worked there with no
problems)
Does anyone else get similar results?
Dave.
--------------------------------------cut
here--------------------------------------------------------------------
''' if "IN_BAD" is parsed, a segfault is triggered at exit.
This appears to be a result of further cleanup code running
after the unicode object stuff has been freed by Python
'''
IN_BAD='''
<a:x xmlns:a="uri:testing">
<t a:m="0"/>
</a:x>'''
IN_OK='''
<a:x xmlns:a="uri:testing">
<t m="0"/>
</a:x>'''
#
# Change this to IN_BAD to get a segfault
# No problems occur with IN_OK
#
#IN = IN_OK
IN = IN_BAD
from xml.dom.ext.reader import PyExpat
class Reader:
def __init__(self,reader):
self.reader = reader
def __del__(self):
print "cleaning"
# This triggers the segfault
self.reader.releaseNode(self.d)
r = Reader(PyExpat.Reader())
r.d=r.reader.fromString(IN)
print "done"