classification
Title: Segfault in typeobject.c
Type: crash Stage:
Components: Versions: Python 2.6
process
Status: closed Resolution: not a bug
Dependencies: Superseder:
Assigned To: Nosy List: amaury.forgeotdarc, gbritton, mark.dickinson
Priority: normal Keywords:

Created on 2009-05-02 21:14 by gbritton, last changed 2009-05-07 17:35 by amaury.forgeotdarc. This issue is now closed.

Files
File name Uploaded Description Edit
gdb-python.txt gbritton, 2009-05-02 21:14 gdb backtrace of segfault
Messages (4)
msg86981 - (view) Author: Gerald Britton (gbritton) Date: 2009-05-02 21:14
Python 2.6 segfaults when starting up the gramps application
msg87041 - (view) Author: Mark Dickinson (mark.dickinson) * (Python committer) Date: 2009-05-03 09:51
This doesn't look like a Python issue to me;  it also looks like it's 
nothing to do with ctypes, so I've unselected that from the components.

The bug may well be in gobjectmodule.c, which isn't part of core Python 
AFAIK.

Any chance you could narrow down the cause of the failure?
msg87043 - (view) Author: Gerald Britton (gbritton) Date: 2009-05-03 11:46
This bug reports corresponds to one opened on Gnome:

http://bugzilla.gnome.org/show_bug.cgi?id=578419

According to the devs there:

"As far as I can tell this is a Python/C bug.  PyGObject is doing
everything by
the book, and it is Python that is giving us corrupted base objects.  I
debugged long and hard but was unable to fix a bug that just isn't
there, nor
was I able to figure out a workaround."

I sure don't want this to get into a finger-pointing battle!  All I know
is that I can reproduce this at will. If the backtrace is not enough to
narrow down the cause of failure, please let me know what you would
need.  I'll be glad to help solve the problem.
msg87380 - (view) Author: Amaury Forgeot d'Arc (amaury.forgeotdarc) * (Python committer) Date: 2009-05-07 17:35
This is a bug in pygobject, which has been already corrected btw:

http://git.gnome.org./cgit/pygobject/commit/?id=84706c9a73ad8b2e1dbd3eada09e4425a01d4d05

The "corrupted base object" is actually an old-style class...

[the gdb trace shows that you don't have this version: in
pyg_type_add_interfaces(), the variable 'base' was a PyTypeObject*, the
bug fix changed it to a PyObject*]
History
Date User Action Args
2009-05-07 17:35:25amaury.forgeotdarcsetstatus: open -> closed

nosy: + amaury.forgeotdarc
messages: + msg87380

resolution: not a bug
2009-05-03 11:46:25gbrittonsetmessages: + msg87043
2009-05-03 09:51:17mark.dickinsonsetassignee: theller ->
messages: + msg87041
components: - ctypes
nosy: + mark.dickinson, - theller
2009-05-02 21:14:12gbrittoncreate