[mod_python] Segfault in 2.7.8 if encoding changed

Peter Hawkins peter at hawkins.emu.id.au
Sat Sep 14 11:39:17 EST 2002


Hi...

I'm the current debian package maintainer for mod_python.

I'm hoping that someone can help me with this bug (the bugs listed 
below are identical, I think).
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=152750&repeatmerged=yes
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=135346&repeatmerged=yes

As explained in the bug logs, if you change your encoding to anything 
other than ascii in /etc/python2.1/site.py, then mod_python segfaults 
on every request. Somehow, this causes the interpreters global 
variable to be NULL when it is used in get_interpreter_data, leading 
to a segfault.

The python versions that modpython is built against (2.1, 2.2 and 
2.3a0) are all compiled with threads on linux (not really an awful 
lot I can do about that).

Backtrace (my own):
0x40280424 in PyDict_GetItemString () from 
/usr/lib/libpython2.2.so.0.0
(gdb) bt
#0  0x40280424 in PyDict_GetItemString () from 
/usr/lib/libpython2.2.so.0.0
#1  0x4022e1a6 in get_interpreter_data () from 
/usr/lib/apache/1.3/mod_python.so
#2  0x4022f0f4 in make_obcallback () from 
/usr/lib/apache/1.3/mod_python.so
#3  0x402306f0 in python_finalize () from 
/usr/lib/apache/1.3/mod_python.so
#4  0x08053a84 in ap_invoke_handler ()
#5  0x0806338c in ap_some_auth_required ()
#6  0x080633e8 in ap_process_request ()
#7  0x0805cbcb in ap_child_terminate ()
#8  0x0805cd5c in ap_child_terminate ()
#9  0x0805ce79 in ap_child_terminate ()
#10 0x0805d355 in ap_child_terminate ()
#11 0x0805da5d in main ()
#12 0x400ed0bf in __libc_start_main () from /lib/libc.so.6



More information about the Mod_python mailing list