[Development] Qt 5.6.0 (final) packages available
Thiago Macieira
thiago.macieira at intel.com
Tue Mar 15 18:26:15 CET 2016
On terça-feira, 15 de março de 2016 08:14:16 PDT Thiago Macieira wrote:
> Again: when it was reported, it sounded like a race condition that was hit
> only infrequently, if you were unlucky. Only when Jan reported in this
> thread that it is happening all the time did it sound more serious.
I've just investigated the issue and it's not that simple to fix.
The problem is the loopback delivery of messages. When QtDBus notices that an
outgoing call's destination is the local application, it has an optimisation
path that bypasses going through the bus. That was added in Qt 4.2 to
specifically avoid a deadlock: the application would be waiting for a reply and
would not be processing the incoming call.
Unfortunately, there's something wrong with the new threaded solution. I'm
still investigating whether there's only one bug or if there are two. The
semaphore that was hit should never have been hit, but it's only getting hit
because a previous outgoing local call wasn't delivered properly.
--
Thiago Macieira - thiago.macieira (AT) intel.com
Software Architect - Intel Open Source Technology Center
More information about the Development
mailing list