[prev in list] [next in list] [prev in thread] [next in thread] 

List:       pykde
Subject:    [PyKDE] pyqt4: segmentation fault/data corruption with signal/slots
From:       Panard <panard () inzenet ! org>
Date:       2006-09-22 0:01:06
Message-ID: 200609220201.06146.panard () inzenet ! org
[Download RAW message or body]

[Attachment #2 (multipart/signed)]

[Attachment #4 (multipart/mixed)]


Hello,

I'm experiencing a strange problem with PyQt4.
- PyQt4 and Sip snapshots 20060917
- qt-4.1.4
- all compiled with gcc 4.1.1

My test case is a QDialog, designed with designer, which contains only a 
QProgressBar.
That QDialog (progress_section) will start a thread which will do some stuff 
and emit signals to the QDialog for notifying progress 
(signal "section_changed").
progress_section connects the signal "section_changed" to a test method, which 
will print the arguments of the emit ( a string and a float ).

But when printing those arguments, it appears that the values of them has 
changed... and some strange things are printed :
==> emit Read available updates 0.2
receive (<refcnt 0 at 0x2b94aca3bef0>, <refcnt 0 at 0x2b94a9377500>) <frame 
object at 0x752810>
or 
receive (<refcnt 0 at 0x2abf8db795a8>, <bound method job.start of 
<job(Thread-1, stopped)>>) <refcnt 2377570436 at 0x2abf8db6d8b8>

In my qt app where I extracted that test case, things like
 (<refcnt 0 at 0x10a1e18>, 'Python-urllib/2.4') Python-urllib/2.4
appear... looks like information leak!


try running qt_bug1.py some times, for me, it almost always fails with error 
messages like :
=========
emit Read available updates 0.2
emit Fetching catalog updates 0.3
emit Applying fixes 0.6
emit Applying catalog updates 0.9
receive (<refcnt 0 at 0x2abf8db795a8>, <bound method job.start of 
<job(Thread-1, stopped)>>) <refcnt 2377570436 at 0x2abf8db6d8b8>
receive 
((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((
[thousand of (]
Segmentation Fault
=========

A strange thing is that I don't use any of the components designed with 
designer, but if I remove the setupGui(self), I'm not be able to reproduce 
the crash...

I was able able to reproduce it on a another machine (a mac powerbook/linux, 
gcc 4.1.1)


Please ask me for any other debug output... this bug is really blocker for 
me...

Thanks


Panard
-- 
HomePage: http://dev.inzenet.org/~panard/
Yzis : http://www.yzis.org
Qomics : http://dev.inzenet.org/~panard/qomics
Smileys : http://smileys.inzenet.org

-- 
HomePage: http://dev.inzenet.org/~panard/
Yzis : http://www.yzis.org
Qomics : http://dev.inzenet.org/~panard/qomics
Smileys : http://smileys.inzenet.org

["gui.py" (application/x-python)]
["progress_section.ui" (application/x-designer)]
["qt_bug1.py" (application/x-python)]
[Attachment #10 (application/pgp-signature)]

_______________________________________________
PyKDE mailing list    PyKDE@mats.imk.fraunhofer.de
http://mats.imk.fraunhofer.de/mailman/listinfo/pykde


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic