Skip to content
Commit 757b5e8c authored by Jolene K's avatar Jolene K Committed by Nate Graham
Browse files

systemtray: Fix race in DBusServiceObserver

When a service appears right after the ListNames() call finished, but
before the QDBusPendingCallWatcher is set up, the ::serviceRegistered
signal will be queued before the ListNames() response. As a result,
the service will be ignored by DBusServiceObserver.

Switching to QDBusInterface::callWithCallback() ensures that the
result slot is queued as soon as the response arrives, thus avoiding
the race.

Credits go to Sam Edwards for identifying the problem in
https://bugs.kde.org/show_bug.cgi?id=422111#c69

BUG: 422111


(cherry picked from commit 3751f49c)
parent f4b7cbb6
Loading
Loading
Loading
Pipeline #165874 passed with stage
in 10 minutes and 58 seconds
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment