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
Pipeline
#165874
passed
with stage
in
10 minutes and 58 seconds
Loading
Please register or sign in to comment