sax.make_parser() segfaults

F

Frank Millman

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
 
F

Frank Millman

Frank said:
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.

Progress report - I have narrowed it down to wxPython. I wrote small
stand-alone programs, one using Twisted, one using wxPython. Twisted
works fine, wxPython segfaults.

If no-one here can help, I will try asking on the wxPython mailing
list.

Frank
 
F

Frank Millman

Frank said:
Progress report - I have narrowed it down to wxPython. I wrote small
stand-alone programs, one using Twisted, one using wxPython. Twisted
works fine, wxPython segfaults.

No-one? I thought that a error like this in a standard module would be
of some concern, even if it turns out that the fault is with wxPython.

Anyway, I have found a workaround.

I call sax.make_parser() from the main line of the program, before
starting the wxPython main loop. The reference it returns is global,
and can be used anywhere within the program. This seems to work ok.

Frank
 
B

Bernhard Herzog

Frank Millman said:
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.
[...]
Progress report - I have narrowed it down to wxPython. I wrote small
stand-alone programs, one using Twisted, one using wxPython. Twisted
works fine, wxPython segfaults.

Could this be the following python bug:
https://sourceforge.net/tracker/index.php?func=detail&aid=1075984&group_id=5470&atid=105470

Bernhard
 
F

Frank Millman

Bernhard said:
Frank Millman said:
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. [...]
Progress report - I have narrowed it down to wxPython. I wrote small
stand-alone programs, one using Twisted, one using wxPython. Twisted
works fine, wxPython segfaults.

Could this be the following python bug:
https://sourceforge.net/tracker/index.php?func=detail&aid=1075984&group_id=5470&atid=105470

Bernhard

--

The symptoms certainly look the same - thanks for this link.

It also fits in with my workaround, as someone commented 'if you import
pyexpat first, it looks fine', which is effectively what I am doing.

Many thanks for the response.

Frank
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,764
Messages
2,569,567
Members
45,041
Latest member
RomeoFarnh

Latest Threads

Top