sax.make_parser() segfaults

Frank Millman frank at chagford.com
Tue Nov 29 16:40:24 CET 2005


Hi all

I am using Python 2.4.1. I have machines running FC4, RH9, and MSW
Server 2003 for testing.

If I call sax.make_parser() from the interpreter or from a stand-alone
program, it works fine on all machines, but in the following setup it
works correctly on MSW, but segfaults on both FC4 and RH9.

The setup is a client program running wxPython as a gui, and Twisted as
a means of connecting to a server. Both wxPython's and Twisted's main
loops seem to be running ok. I have made a remote call to a Twisted
server, which has returned an xml string. In the callback routine, I
print the xml for debugging purposes, which looks fine, then I call
'parser = sax.make_parser()'. At that point it segfaults.

I added a 'print sax' command just before the call to ensure it is
valid. It displays <module 'xml.sax' from
'/usr/lib/python2.4/xml/sax/__init__.pyc'>, which looks correct.

A little digging reveals that the segfault occurs in
xml/parsers/expat.py, when it tries to execute 'from pyexpat import *'.

On FC4 and RH9, pyexpat.so is in python2.4/lib-dynload. On MSW, there
is a pyexpat.pyd in Python24/DLLSs, and a pyexpat.lib in Python24/libs.
I don't know if any of this is relevant, but I thought I would supply
as much info as possible. As mentioned above, I do not have the problem
with MSW.

Any suggestions will be much appreciated.

Thanks

Frank Millman




More information about the Python-list mailing list