[PyQt] a CustomEvent in KTMLPart crashes eventFilter

2007-09-07 Thread Jean-Michel Vourgère
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 0x 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


kaboum.py
Description: application/python
___
PyQt mailing listPyQt@riverbankcomputing.com
http://www.riverbankcomputing.com/mailman/listinfo/pyqt

Re: [PyQt] a CustomEvent in KTMLPart crashes eventFilter

2007-09-07 Thread Jim Bublitz
One additional comment (that just occurred to me)  - your version will work if 
you don't try to display a page (begin - write - end) before starting the 
event loop in KApplication.

That's probably what's causing the crash.

Jim
___
PyQt mailing listPyQt@riverbankcomputing.com
http://www.riverbankcomputing.com/mailman/listinfo/pyqt