[PyQt] Signal Bug in 4.2

David Boddie david at boddie.org.uk
Wed Jul 25 12:46:13 BST 2007


On Tue, 24 Jul 2007 14:54:50 -0700, Peter Shinners wrote:

> We have just migrated code from using PyQt-4.2 on Qt-4.2 to using
> PyQt-4.2 on Qt-4.2. This has revealed what looks like a very serious bug
> in the signal handling code for PyQt-4.2.
>
> We have Python "value" objects derived from QObject. These emit a value
> change event to other values and to listening QWidget derived objects.
> After a short (yet non-repeatable) series of actions, the signal
> callbacks will no longer be called. We can confirm that the objects on
> both sides are still valid.

OK. Some things to check first:

 1. Which platform are you running on?
 2. Are the signal-slot connections direct or queued?
 3. Do the Python objects live in a different thread to the listening
    objects?

> We are not ruling out a problem on our end yet. Again, this works
> without error on 4.1.1, but will always fail with 4.2. The thing that
> makes this tricky is there is no purely repeatable way to trigger the
> problem. But it always happens within a small number of steps.
>
> The layers of code also make this difficult to reduce to a minimal test
> case. I know that would largely help this get tracked down, but I am
> coming here to look for solutions early.
>
> Has anyone else reported similar problems on 4.2? Are there any simple
> tests we could run in the meantime to help narrow this down?

The following thread on qt-interest might be relevant:

  http://lists.trolltech.com/qt-interest/2007-03/thread00488-0.html

It depends on your answers to the above questions, however.

David


More information about the PyQt mailing list