https://bugs.kde.org/show_bug.cgi?id=422111

Nate Graham <n...@kde.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
      Latest Commit|https://invent.kde.org/plas |https://invent.kde.org/plas
                   |ma/plasma-workspace/commit/ |ma/plasma-workspace/commit/
                   |ff834fc96548a0d61def108dea6 |757b5e8c27a43a42d6a28c8dda6
                   |f229437c6c8d7               |6be08bf231b6a

--- Comment #97 from Nate Graham <n...@kde.org> ---
Git commit 757b5e8c27a43a42d6a28c8dda66be08bf231b6a by Nate Graham, on behalf
of Jolene K.
Committed on 20/04/2022 at 15:40.
Pushed by ngraham into branch 'Plasma/5.24'.

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


(cherry picked from commit 3751f49cc5be219e63c7fae1df9f1b6e77f5762a)

M  +38   -26   applets/systemtray/dbusserviceobserver.cpp
M  +7    -2    applets/systemtray/dbusserviceobserver.h

https://invent.kde.org/plasma/plasma-workspace/commit/757b5e8c27a43a42d6a28c8dda66be08bf231b6a

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to