[PyQt] a CustomEvent in KTMLPart crashes eventFilter

Jean-Michel Vourgère nirgal at dental-on-line.fr
Fri Sep 7 16:00:19 BST 2007


Hi.

I've been digging into a bug for a few days, now. After upgrading from Debian Sarge to Etch, our python application crashes (SEGV) if we install an event filter.
Attached is a minimal example of the problem.

The application doesn't crash when commenting out the installEventFilter, despite the fact it does nothing.

Does any one has a cue?
I suspect a problem in KHTML sending a signal to a deleted object.
It could also be that the "void *data" of the QCustomEvent causes problems in sip that can't possibly convert its type...
Or maybe I'm just doing something wrong that will look obvious to an expert ^^

(gdb) bt
#0  0xb781a1fd in sipQLayoutItem::sizeHint () from /usr/lib/python2.4/site-packages/qt.so
#1  0xb7307264 in sip_api_convert_from_void_ptr () from /usr/lib/python2.4/site-packages/sip.so
#2  0xb7307470 in sip_api_convert_from_void_ptr () from /usr/lib/python2.4/site-packages/sip.so
#3  0x0808b9f3 in PyType_GenericAlloc ()
#4  0x08089495 in PyTuple_Size ()
#5  0xb72ffbc8 in sip_api_free () from /usr/lib/python2.4/site-packages/sip.so
#6  0xb75ce7f2 in sipVH_qt_177 () from /usr/lib/python2.4/site-packages/qt.so
#7  0xb787cb70 in sipQObject::eventFilter () from /usr/lib/python2.4/site-packages/qt.so
#8  0xb6db4a18 in QApplication::internalNotify (this=0x82ade78, receiver=0x82eb258, e=0xbfc20594) at kernel/qapplication.cpp:2568
#9  0xb6db6a43 in QApplication::notify (this=0x82ade78, receiver=0x82eb258, e=0xbfc20594) at kernel/qapplication.cpp:2358
#10 0xb647ae0e in KApplication::notify (this=0x82ade78, receiver=0x82eb258, event=0xbfc20594) at /tmp/buildd/kdelibs-3.5.5a.dfsg.1/./kdecore/kapplication.cpp:550
#11 0xb65fa0cf in sipKApplication::notify () from /usr/lib/python2.4/site-packages/kdecore.so
#12 0x082ade78 in ?? ()
#13 0x082eb258 in ?? ()
#14 0xbfc20594 in ?? ()
#15 0x00000000 in ?? ()

Last events received:
...
DEBUG:root:Event: <kdeui.KPopupMenu object at 0xb7ae21ec> , <qt.QResizeEvent object at 0xb7ae222c>
DEBUG:root:Event: <kdeui.KPopupMenu object at 0xb7ae21ec> , <qt.QMoveEvent object at 0xb7ae222c>
DEBUG:root:Event: <kdeui.KPopupMenu object at 0xb7ae21ec> , <qt.QResizeEvent object at 0xb7ae222c>
DEBUG:root:Event: <qt.QWidget object at 0xb7ae21ec> , <qt.QPaintEvent object at 0xb7ae222c>
DEBUG:root:Event: <__main__.HTMLPart object at 0xb7ae216c> , <qt.QCustomEvent object at 0xb7ae21ec>
Program received signal SIGSEGV, Segmentation fault.

Versions of Debian Etch:
python	2.4.4-2
kdelibs	4:3.5.5a.dfsg.1-8
python-sip4	4.4.5-4
python-qt3	3.16-1.2
python-kde3	3.15.2+20060422-3

-- Jean-Michel Vourgère
Dental-on-Line - 23 rue du Départ - 75014 Paris
+33 1 43 27 84 88
-------------- next part --------------
A non-text attachment was scrubbed...
Name: kaboum.py
Type: application/x-python
Size: 770 bytes
Desc: not available
Url : http://www.riverbankcomputing.com/pipermail/pyqt/attachments/20070907/696b9fad/kaboum.bin


More information about the PyQt mailing list