[PyQt] segfault, from qt or pyqt?

Jimmy Hairy pink at d00m.com
Wed Dec 15 11:16:23 GMT 2010


Hello,

I experience somewhat random segfaults when running my program. I ran python with gdb and get a backtrace but I don't know what to do now. I can't even decide which of Qt or PyQt is the culprit.
My system: Debian sid, with packages python2.6-dbg (2.6.6-6), python-qt4-dbg (4.7.3-1+b1), libqt4-dbg (4:4.6.3-4)
(maybe the problem is simply because pyqt and qt versions mismatch on my system)
Despite the "-dbg" packages installed, there are still a few "??" in the trace.

The (big) backtrace:

(gdb) bt
#0  0x00000012 in ?? ()
#1  0xb69337d9 in QMetaObject::cast (this=0xb625cfe4, obj=0x8998440)
    at kernel/qmetaobject.cpp:266
#2  0xb61fb816 in ?? () from /usr/lib/pymodules/python2.6/PyQt4/QtCore.so
#3  0xb61fb945 in ?? () from /usr/lib/pymodules/python2.6/PyQt4/QtCore.so
#4  0xb69337aa in QMetaObject::metacall (object=0x898b798, 
    cl=QMetaObject::InvokeMetaMethod, idx=5, argv=0x8a321a8)
    at kernel/qmetaobject.cpp:237
#5  0xb693dd36 in QMetaCallEvent::placeMetaCall (this=0x8998770, object=
    0x898b798) at kernel/qobject.cpp:561
#6  0xb693edfe in QObject::event (this=0x898b798, e=0x8998770)
    at kernel/qobject.cpp:1248
#7  0xb6b9e5cc in QApplicationPrivate::notify_helper (this=0x8480a10, receiver=
    0x898b798, e=0x8998770) at kernel/qapplication.cpp:4302
#8  0xb6ba515e in QApplication::notify (this=0x850c080, receiver=0x898b798, e=
    0x8998770) at kernel/qapplication.cpp:3706
#9  0xb78a320f in ?? () from /usr/lib/pymodules/python2.6/PyQt4/QtGui.so
#10 0xb692e4cb in QCoreApplication::notifyInternal (this=0x850c080, receiver=
    0x898b798, event=0x8998770) at kernel/qcoreapplication.cpp:726
#11 0xb6931f2c in sendEvent (receiver=0x0, event_type=0, data=0x82ccfe0)
    at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#12 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, 
    data=0x82ccfe0) at kernel/qcoreapplication.cpp:1367
---Type <return> to continue, or q <return> to quit---
#13 0xb69320ad in QCoreApplication::sendPostedEvents (receiver=0x0, 
    event_type=0) at kernel/qcoreapplication.cpp:1260
#14 0xb695a57f in sendPostedEvents (s=0x836fa10)
    at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:220
#15 postEventSourceDispatch (s=0x836fa10)
    at kernel/qeventdispatcher_glib.cpp:276
#16 0xb65dc305 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
#17 0xb65dffe8 in ?? () from /lib/libglib-2.0.so.0
#18 0xb65e01c8 in g_main_context_iteration () from /lib/libglib-2.0.so.0
#19 0xb695a075 in QEventDispatcherGlib::processEvents (this=0x829aba8, 
    flags=...) at kernel/qeventdispatcher_glib.cpp:412
#20 0xb6c5ced5 in QGuiEventDispatcherGlib::processEvents (this=0x829aba8, 
    flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#21 0xb692cae9 in QEventLoop::processEvents (this=0xbfffef84, flags=DWARF-2 expression error: DW_OP_reg operations must be used either alone or in conjuction with DW_OP_piece or DW_OP_bit_piece.
)
    at kernel/qeventloop.cpp:149
#22 0xb692cf3a in QEventLoop::exec (this=0xbfffef84, flags=...)
    at kernel/qeventloop.cpp:201
#23 0xb693216f in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1003
#24 0xb6b9e667 in QApplication::exec () at kernel/qapplication.cpp:3581
#25 0xb78a3da8 in ?? () from /usr/lib/pymodules/python2.6/PyQt4/QtGui.so
#26 0x080e0721 in call_function (f=
    Frame 0x82e7ffc, for file prog/guis/tags4/app.py, line 115, in <module> (), throwflag=0) at ../Python/ceval.c:3750
---Type <return> to continue, or q <return> to quit---
#27 PyEval_EvalFrameEx (f=
    Frame 0x82e7ffc, for file prog/guis/tags4/app.py, line 115, in <module> (), throwflag=0) at ../Python/ceval.c:2412
#28 0x080e2507 in PyEval_EvalCodeEx (co=0xb7c2f698, globals=
    {'QAbstractButton': <PyQt4.QtCore.pyqtWrapperType at remote 0x8372294>, 'QSizePolicy': <PyQt4.QtCore.pyqtWrapperType at remote 0x83eedbc>, 'qFatal': <built-in function qFatal>, 'QMatrix3x4': <PyQt4.QtCore.pyqtWrapperType at remote 0x83dda44>, 'QMatrix3x3': <PyQt4.QtCore.pyqtWrapperType at remote 0x83dd6d4>, 'QMatrix3x2': <PyQt4.QtCore.pyqtWrapperType at remote 0x83dd364>, 'QGraphicsColorizeEffect': <PyQt4.QtCore.pyqtWrapperType at remote 0x838b034>, 'qRound64': <built-in function qRound64>, 'QSizeGrip': <PyQt4.QtCore.pyqtWrapperType at remote 0x83eebd4>, 'QStyleOptionComboBox': <PyQt4.QtCore.pyqtWrapperType at remote 0x83f70cc>, 'QX11Info': <PyQt4.QtCore.pyqtWrapperType at remote 0x841fcdc>, 'QAbstractSpinBox': <PyQt4.QtCore.pyqtWrapperType at remote 0x8375d44>, 'QTreeView': <PyQt4.QtCore.pyqtWrapperType at remote 0x838462c>, 'qFuzzyCompare': <built-in function qFuzzyCompare>, 'QFontComboBox': <PyQt4.QtCore.pyqtWrapperType at remote 0x8385e34>, 'QGraphicsTextItem': <PyQt4.QtCore.pyqtWrapperType at remote 0x83...(truncated), locals=
    {'QAbstractButton': <PyQt4.QtCore.pyqtWrapperType at remote 0x8372294>, 'QSizePolicy': <PyQt4.QtCore.pyqtWrapperType at remote 0x83eedbc>, 'qFatal': <built-in function qFatal>, 'QMatrix3x4': <PyQt4.QtCore.pyqtWrapperType at remote 0x83dda44>, 'QMatrix3x3': <PyQt4.QtCore.pyqtWrapperType at remote 0x83dd6d4>, 'QMatrix3x2': <PyQt4.QtCore.pyqtWrapperType at remote 0x83dd364>, 'QGraphicsColorizeEff---Type <return> to continue, or q <return> to quit---
ect': <PyQt4.QtCore.pyqtWrapperType at remote 0x838b034>, 'qRound64': <built-in function qRound64>, 'QSizeGrip': <PyQt4.QtCore.pyqtWrapperType at remote 0x83eebd4>, 'QStyleOptionComboBox': <PyQt4.QtCore.pyqtWrapperType at remote 0x83f70cc>, 'QX11Info': <PyQt4.QtCore.pyqtWrapperType at remote 0x841fcdc>, 'QAbstractSpinBox': <PyQt4.QtCore.pyqtWrapperType at remote 0x8375d44>, 'QTreeView': <PyQt4.QtCore.pyqtWrapperType at remote 0x838462c>, 'qFuzzyCompare': <built-in function qFuzzyCompare>, 'QFontComboBox': <PyQt4.QtCore.pyqtWrapperType at remote 0x8385e34>, 'QGraphicsTextItem': <PyQt4.QtCore.pyqtWrapperType at remote 0x83...(truncated), args=0x0, argcount=0, kws=0x0, kwcount=0, defs=0x0, defcount=0, closure=
    0x0) at ../Python/ceval.c:3000
#29 0x080e2607 in PyEval_EvalCode (co=0xb7c2f698, globals=
    {'QAbstractButton': <PyQt4.QtCore.pyqtWrapperType at remote 0x8372294>, 'QSizePolicy': <PyQt4.QtCore.pyqtWrapperType at remote 0x83eedbc>, 'qFatal': <built-in function qFatal>, 'QMatrix3x4': <PyQt4.QtCore.pyqtWrapperType at remote 0x83dda44>, 'QMatrix3x3': <PyQt4.QtCore.pyqtWrapperType at remote 0x83dd6d4>, 'QMatrix3x2': <PyQt4.QtCore.pyqtWrapperType at remote 0x83dd364>, 'QGraphicsColorizeEffect': <PyQt4.QtCore.pyqtWrapperType at remote 0x838b034>, 'qRound64': <built-in function qRound64>, 'QSizeGrip': <PyQt4.QtCore.pyqtWrapperType at remote 0x83eebd4>, 'QStyleOptionComboBox': <PyQt4.QtCore.pyqtWrapperType at remote 0x83f70cc>, 'QX11Info': <PyQt4.QtCore.pyqtWrapperType at remote 0x841fcdc>, 'QAbstractSpinBox': <PyQt4.QtCore.pyqtWrapperType at remote 0x8375d44>, 'QTreeView': <PyQt4.QtCore.pyqtWrapperType at remote 0x838462c>, 'qFuzzyCompare': <built-in function qFuzzyCompare>, 'QFontComboBox': <PyQt4.QtCore.pyqtWrapperType at remote 0x8385e34---Type <return> to continue, or q <return> to quit---
>, 'QGraphicsTextItem': <PyQt4.QtCore.pyqtWrapperType at remote 0x83...(truncated), locals=
    {'QAbstractButton': <PyQt4.QtCore.pyqtWrapperType at remote 0x8372294>, 'QSizePolicy': <PyQt4.QtCore.pyqtWrapperType at remote 0x83eedbc>, 'qFatal': <built-in function qFatal>, 'QMatrix3x4': <PyQt4.QtCore.pyqtWrapperType at remote 0x83dda44>, 'QMatrix3x3': <PyQt4.QtCore.pyqtWrapperType at remote 0x83dd6d4>, 'QMatrix3x2': <PyQt4.QtCore.pyqtWrapperType at remote 0x83dd364>, 'QGraphicsColorizeEffect': <PyQt4.QtCore.pyqtWrapperType at remote 0x838b034>, 'qRound64': <built-in function qRound64>, 'QSizeGrip': <PyQt4.QtCore.pyqtWrapperType at remote 0x83eebd4>, 'QStyleOptionComboBox': <PyQt4.QtCore.pyqtWrapperType at remote 0x83f70cc>, 'QX11Info': <PyQt4.QtCore.pyqtWrapperType at remote 0x841fcdc>, 'QAbstractSpinBox': <PyQt4.QtCore.pyqtWrapperType at remote 0x8375d44>, 'QTreeView': <PyQt4.QtCore.pyqtWrapperType at remote 0x838462c>, 'qFuzzyCompare': <built-in function qFuzzyCompare>, 'QFontComboBox': <PyQt4.QtCore.pyqtWrapperType at remote 0x8385e34>, 'QGraphicsTextItem': <PyQt4.QtCore.pyqtWrapperType at remote 0x83...(truncated)) at ../Python/ceval.c:541
#30 0x080ffcbd in run_mod (fp=0x82a1018, filename=
    0xbffff5e6 "prog/guis/tags4/app.py", start=257, globals=
    {'QAbstractButton': <PyQt4.QtCore.pyqtWrapperType at remote 0x8372294>, 'QSizePolicy': <PyQt4.QtCore.pyqtWrapperType at remote 0x83eedbc>, 'qFatal': <built-in function qFatal>, 'QMatrix3x4': <PyQt4.QtCore.pyqtWrapperType at remote 0x83dda44>, 'QMatrix3x3': <PyQt4.QtCore.pyqtWrapperType at remote 0x83dd6d4>, 'QMatrix3x2': <PyQt4.QtCore.pyqtWrapperType at remote 0x83dd364>, 'QGraphicsColorizeEff---Type <return> to continue, or q <return> to quit---
ect': <PyQt4.QtCore.pyqtWrapperType at remote 0x838b034>, 'qRound64': <built-in function qRound64>, 'QSizeGrip': <PyQt4.QtCore.pyqtWrapperType at remote 0x83eebd4>, 'QStyleOptionComboBox': <PyQt4.QtCore.pyqtWrapperType at remote 0x83f70cc>, 'QX11Info': <PyQt4.QtCore.pyqtWrapperType at remote 0x841fcdc>, 'QAbstractSpinBox': <PyQt4.QtCore.pyqtWrapperType at remote 0x8375d44>, 'QTreeView': <PyQt4.QtCore.pyqtWrapperType at remote 0x838462c>, 'qFuzzyCompare': <built-in function qFuzzyCompare>, 'QFontComboBox': <PyQt4.QtCore.pyqtWrapperType at remote 0x8385e34>, 'QGraphicsTextItem': <PyQt4.QtCore.pyqtWrapperType at remote 0x83...(truncated), locals=
    {'QAbstractButton': <PyQt4.QtCore.pyqtWrapperType at remote 0x8372294>, 'QSizePolicy': <PyQt4.QtCore.pyqtWrapperType at remote 0x83eedbc>, 'qFatal': <built-in function qFatal>, 'QMatrix3x4': <PyQt4.QtCore.pyqtWrapperType at remote 0x83dda44>, 'QMatrix3x3': <PyQt4.QtCore.pyqtWrapperType at remote 0x83dd6d4>, 'QMatrix3x2': <PyQt4.QtCore.pyqtWrapperType at remote 0x83dd364>, 'QGraphicsColorizeEffect': <PyQt4.QtCore.pyqtWrapperType at remote 0x838b034>, 'qRound64': <built-in function qRound64>, 'QSizeGrip': <PyQt4.QtCore.pyqtWrapperType at remote 0x83eebd4>, 'QStyleOptionComboBox': <PyQt4.QtCore.pyqtWrapperType at remote 0x83f70cc>, 'QX11Info': <PyQt4.QtCore.pyqtWrapperType at remote 0x841fcdc>, 'QAbstractSpinBox': <PyQt4.QtCore.pyqtWrapperType at remote 0x8375d44>, 'QTreeView': <PyQt4.QtCore.pyqtWrapperType at remote 0x838462c>, 'qFuzzyCompare': <built-in function qFuzzyCompare>, 'QFontComboBox': <PyQt4.QtCore.pyqtWrapperType at remote 0x8385e34>, 'QGraphicsTextItem': <PyQt4.QtCore.pyqtWrapperType at remote 0x83...(truncated), closeit=1, flags=0xbffff36c) at ../Python/pythonrun.c:1351
---Type <return> to continue, or q <return> to quit---
#31 PyRun_FileExFlags (fp=0x82a1018, filename=
    0xbffff5e6 "prog/guis/tags4/app.py", start=257, globals=
    {'QAbstractButton': <PyQt4.QtCore.pyqtWrapperType at remote 0x8372294>, 'QSizePolicy': <PyQt4.QtCore.pyqtWrapperType at remote 0x83eedbc>, 'qFatal': <built-in function qFatal>, 'QMatrix3x4': <PyQt4.QtCore.pyqtWrapperType at remote 0x83dda44>, 'QMatrix3x3': <PyQt4.QtCore.pyqtWrapperType at remote 0x83dd6d4>, 'QMatrix3x2': <PyQt4.QtCore.pyqtWrapperType at remote 0x83dd364>, 'QGraphicsColorizeEffect': <PyQt4.QtCore.pyqtWrapperType at remote 0x838b034>, 'qRound64': <built-in function qRound64>, 'QSizeGrip': <PyQt4.QtCore.pyqtWrapperType at remote 0x83eebd4>, 'QStyleOptionComboBox': <PyQt4.QtCore.pyqtWrapperType at remote 0x83f70cc>, 'QX11Info': <PyQt4.QtCore.pyqtWrapperType at remote 0x841fcdc>, 'QAbstractSpinBox': <PyQt4.QtCore.pyqtWrapperType at remote 0x8375d44>, 'QTreeView': <PyQt4.QtCore.pyqtWrapperType at remote 0x838462c>, 'qFuzzyCompare': <built-in function qFuzzyCompare>, 'QFontComboBox': <PyQt4.QtCore.pyqtWrapperType at remote 0x8385e34>, 'QGraphicsTextItem': <PyQt4.QtCore.pyqtWrapperType at remote 0x83...(truncated), locals=
    {'QAbstractButton': <PyQt4.QtCore.pyqtWrapperType at remote 0x8372294>, 'QSizePolicy': <PyQt4.QtCore.pyqtWrapperType at remote 0x83eedbc>, 'qFatal': <built-in function qFatal>, 'QMatrix3x4': <PyQt4.QtCore.pyqtWrapperType at remote 0x83dda44>, 'QMatrix3x3': <PyQt4.QtCore.pyqtWrapperType at remote 0x83dd6d4>, 'QMatrix3x2': <PyQt4.QtCore.pyqtWrapperType at remote 0x83dd364>, 'QGraphicsColorizeEffect': <PyQt4.QtCore.pyqtWrapperType at remote 0x838b034>, 'qRound64': <built-in function qRound64>, 'QSizeGrip': <PyQt4.QtCore.pyqtWrapperType at remote 0x83eeb---Type <return> to continue, or q <return> to quit---
d4>, 'QStyleOptionComboBox': <PyQt4.QtCore.pyqtWrapperType at remote 0x83f70cc>, 'QX11Info': <PyQt4.QtCore.pyqtWrapperType at remote 0x841fcdc>, 'QAbstractSpinBox': <PyQt4.QtCore.pyqtWrapperType at remote 0x8375d44>, 'QTreeView': <PyQt4.QtCore.pyqtWrapperType at remote 0x838462c>, 'qFuzzyCompare': <built-in function qFuzzyCompare>, 'QFontComboBox': <PyQt4.QtCore.pyqtWrapperType at remote 0x8385e34>, 'QGraphicsTextItem': <PyQt4.QtCore.pyqtWrapperType at remote 0x83...(truncated), closeit=1, flags=0xbffff36c) at ../Python/pythonrun.c:1337
#32 0x080fff22 in PyRun_SimpleFileExFlags (fp=0x82a1018, filename=
    0xbffff5e6 "prog/guis/tags4/app.py", closeit=1, flags=0xbffff36c)
    at ../Python/pythonrun.c:941
#33 0x0805dd81 in Py_Main (argc=6, argv=0xbffff454) at ../Modules/main.c:577
#34 0x0805cf6b in main (argc=6, argv=0xbffff454) at ../Modules/python.c:23
(gdb) 



Thanks



_____________________________________________________________
Free webmail at http://mail.d00m.com/


More information about the PyQt mailing list