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

David Edmundson <k...@davidedmundson.co.uk> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
      Latest Commit|                            |https://invent.kde.org/plas
                   |                            |ma/plasma-workspace/commit/
                   |                            |d79a927a4c7a8b489b985a6ae94
                   |                            |bd9d8f082db93
         Resolution|---                         |FIXED
             Status|ASSIGNED                    |RESOLVED

--- Comment #22 from David Edmundson <k...@davidedmundson.co.uk> ---
Git commit d79a927a4c7a8b489b985a6ae94bd9d8f082db93 by David Edmundson.
Committed on 20/09/2022 at 20:43.
Pushed by davidedmundson into branch 'master'.

[shell] Always call load after init

Currently we get two different startup paths:

Cold case:
 - we call ShellCorona::load from startup
 - we have no kactivities loaded yet, we do an early return and connect
 - we call ShellCorona::init
 - activities load, we start the real load via the connect

Restart case:
 - we call ShellCorona::load
 - we have no kactivities loaded yet, we do an early return and connect
 - We start an event loop, waiting for our bus name to appear
 - activities load, we start the real load
 - we call ShellCorona::init

Calling load before init results in broken behaviour as things aren't
initialized.

setShell is only called once in main.cpp really early on. It's not used
elsewhere or exposed on DBus. There's no need for it to call load, when
it will fail and wait for an event loop in almost all cases. Calling it
from init makes ordering easier to follow and consistent through all
paths.

M  +43   -28   shell/shellcorona.cpp

https://invent.kde.org/plasma/plasma-workspace/commit/d79a927a4c7a8b489b985a6ae94bd9d8f082db93

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

Reply via email to