From 386f4b18b5bcfa51bdb9d515b79d90812f3838ad Mon Sep 17 00:00:00 2001 From: Michael Palimaka Date: Wed, 10 Feb 2016 03:10:51 +1100 Subject: kde-plasma/kscreenlocker: backport patch from upstream solving lock screen bypass Gentoo-bug: 574270 Package-Manager: portage-2.2.27 --- .../kscreenlocker-5.5.4-lockscreen-bypass.patch | 39 ++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 kde-plasma/kscreenlocker/files/kscreenlocker-5.5.4-lockscreen-bypass.patch (limited to 'kde-plasma/kscreenlocker/files') diff --git a/kde-plasma/kscreenlocker/files/kscreenlocker-5.5.4-lockscreen-bypass.patch b/kde-plasma/kscreenlocker/files/kscreenlocker-5.5.4-lockscreen-bypass.patch new file mode 100644 index 000000000000..6eb6789977f4 --- /dev/null +++ b/kde-plasma/kscreenlocker/files/kscreenlocker-5.5.4-lockscreen-bypass.patch @@ -0,0 +1,39 @@ +From fae65f1cdd6446042b31ccd0eafd7a4c0b6623e3 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Martin=20Gr=C3=A4=C3=9Flin?= +Date: Fri, 5 Feb 2016 10:30:19 +0100 +Subject: [PATCH] [greeter] Dont quit when last window closes + +Qt allows to have no screens. If all XRandR screens are disconnected +there are also no QScreens. This is from an X11 perspective wrong, but +we have to deal with it. No QScreens means that all views are destroyed +and no new ones are created. Thus all windows close and the greeter +exited successfully which in turn unlocked the screen. + +This change ensures that the greeter doesn't exit when all windows close. + +Funnily this was not a problem with the well known issue of Qt +crashing when all screens are disconnected. The lock screen handles +crashes gracefully and just restarts or more likely Qt also crashes +the application using KSld and thus taking down the complete session. + +BUG: 358125 +FIXED-IN: 5.5.5 +--- + greeter/main.cpp | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/greeter/main.cpp b/greeter/main.cpp +index e4e679e..5625d36 100644 +--- a/greeter/main.cpp ++++ b/greeter/main.cpp +@@ -59,6 +59,7 @@ int main(int argc, char* argv[]) + qputenv("QT_IM_MODULE", QByteArrayLiteral("compose")); + } + ScreenLocker::UnlockApp app(argc, argv); ++ app.setQuitOnLastWindowClosed(false); + QCoreApplication::setApplicationName(QStringLiteral("kscreenlocker_greet")); + QCoreApplication::setApplicationVersion(QStringLiteral("0.1")); + QCoreApplication::setOrganizationDomain(QStringLiteral("kde.org")); +-- +2.4.10 + -- cgit v1.2.3-65-gdbad