[prev in list] [next in list] [prev in thread] [next in thread]
List: pykde
Subject: Re: [PyQt] segfault : interpreting back trace
From: Giovanni Bajo <rasky () develer ! com>
Date: 2008-11-24 11:54:39
Message-ID: 1227527679.16950.6.camel () ozzu
[Download RAW message or body]
On dom, 2008-11-23 at 23:47 +0100, Erik Janssens wrote:
> Hi,
>
> I'm having a pyqt segmentation fault, and I cannot find out what is
> causing it. Can somebody make some suggestions on how to handle this ?
>
> I tried to use gdb to get a back trace, but it doesn't make much sense
> to me, it seems to be related to a c-function call, but I don't know
> which one (back trace below)
>
> Any help or suggestion is appreciated.
Let's see if my psychic debugging works well today ;)
I see this:
#24 0x08126311 in t_bootstrap (boot_raw=0x84a5588)
at ../Modules/threadmodule.c:424
#25 0xb7f0a4fb in start_thread ()
from /lib/tls/i686/cmov/libpthread.so.0
which makes me believe you're using multi-threading in your problem.
(It's normal to have crashes with threading program, and that's why you
shouldn't use threads at all unless absolutely necessary -- which is
almost never).
I also see that you're doing it through threadmodule.c, so Python's
threading API. Please keep in mind that:
1) You shouldn't be using Python threading API with Qt. It's probably
fine if your thread is 100% Python-only, but as soon as you touch *any*
Qt's API, you can get random crashes. Use QThread instead.
2) Make sure to have read and understood all the requirements for
multi-thread programming with Qt. Specifically, you can't directly
touch/modify/read *any* widget from the secondary thread. You should
instead post events to the main thread, or use the asynchronous
signal/slot mechanism.
--
Giovanni Bajo
Develer S.r.l.
http://www.develer.com
_______________________________________________
PyQt mailing list PyQt@riverbankcomputing.com
http://www.riverbankcomputing.com/mailman/listinfo/pyqt
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic