Bug 336488

Summary: klauncher access qguiapp::platformName but is itself a coreapp
Product: [Frameworks and Libraries] frameworks-kinit Reporter: Harald Sitter <sitter>
Component: generalAssignee: David Faure <faure>
Status: RESOLVED FIXED    
Severity: major CC: kdelibs-bugs, mgraesslin, sitter
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: unspecified   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Harald Sitter 2014-06-20 10:58:49 UTC
https://git.reviewboard.kde.org/r/115716/

this review introduced conditional code paths depending on
> mIsX11 = QGuiApplication::platformName() == QStringLiteral("xcb");
klauncher however is a QCoreApplication which makes platformName always return an empty string. The change effectively broke cursor startup notification (busy cursor) as now KLauncher::send_service_startup_info always returns immediately (as mIsX11 is always false) preventing the startup notification from being dispatched.

Confirmed possible fix: convert klauncher to a QGuiApplication (probably not desirable?)

Reproducible: Always
Comment 1 Martin Flöser 2014-06-20 11:50:34 UTC
the mentioned commit is not the only reason why it would break. klauncher uses KStartupInfo which uses KXMessages which also checks the platform and would fail.
Comment 2 Martin Flöser 2014-06-23 06:30:00 UTC
Git commit 7941d45f08e8906447cfd0df77801cabe3f4f8ec by Martin Gräßlin.
Committed on 20/06/2014 at 11:42.
Pushed by graesslin into branch 'master'.

Turn KLauncher into a QGuiApplication

klauncher uses the X11 windowing system which means it should be a
QGuiApplication. This is important as otherwise all the runtime checks
for whether X11 is used will fail. This is not only inside KLauncher
itself, but also in KWindowSystem.
REVIEW: 118846

M  +3    -3    src/klauncher/klauncher_main.cpp

http://commits.kde.org/kinit/7941d45f08e8906447cfd0df77801cabe3f4f8ec