Hello community, here is the log from the commit of package sddm for openSUSE:Factory checked in at 2018-05-16 11:23:10 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/sddm (Old) and /work/SRC/openSUSE:Factory/.sddm.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "sddm" Wed May 16 11:23:10 2018 rev:35 rq:606940 version:0.17.0 Changes: -------- --- /work/SRC/openSUSE:Factory/sddm/sddm.changes 2018-05-13 15:56:24.373287593 +0200 +++ /work/SRC/openSUSE:Factory/.sddm.new/sddm.changes 2018-05-16 11:23:17.432227700 +0200 @@ -1,0 +2,6 @@ +Mon May 14 08:12:49 UTC 2018 - fabian@ritter-vogt.de + +- Add patch to not include sessions with NoDisplay=true in the list (boo#1086614): + * 0001-Don-t-add-session-files-with-NoDisplay-true-to-Sessi.patch + +------------------------------------------------------------------- New: ---- 0001-Don-t-add-session-files-with-NoDisplay-true-to-Sessi.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ sddm.spec ++++++ --- /var/tmp/diff_new_pack.8eA73Q/_old 2018-05-16 11:23:20.264124839 +0200 +++ /var/tmp/diff_new_pack.8eA73Q/_new 2018-05-16 11:23:20.268124694 +0200 @@ -42,6 +42,8 @@ Patch50: 0001-Remove-suffix-for-Wayland-session.patch # Not merged yet: https://github.com/sddm/sddm/pull/1017 Patch51: 0006-Don-t-fill-UserModel-if-theme-does-not-require-it.patch +# Not merged yet: https://github.com/sddm/sddm/pull/1029 +Patch52: 0001-Don-t-add-session-files-with-NoDisplay-true-to-Sessi.patch # Patch100-?: PATCH-FIX-OPENSUSE # Use openSUSE pam config Patch100: proper_pam.diff ++++++ 0001-Don-t-add-session-files-with-NoDisplay-true-to-Sessi.patch ++++++
From 9f72d78cd729b76bac96a79ab767b02e30b118c7 Mon Sep 17 00:00:00 2001 From: Fabian Vogt
Date: Mon, 14 May 2018 10:06:34 +0200 Subject: [PATCH] Don't add session files with NoDisplay=true to SessionModel
Same treatment as for Hidden. SessionModel is not used for autologin, so for all intents and purposes it's the same. If a user logged in with a NoDisplay=true session, the last session index will be incorrect, but IMO that's the intended behaviour of NoDisplay. --- src/common/Session.cpp | 8 ++++++++ src/common/Session.h | 2 ++ src/greeter/SessionModel.cpp | 2 +- 3 files changed, 11 insertions(+), 1 deletion(-) diff --git a/src/common/Session.cpp b/src/common/Session.cpp index 4812d67..aa4dad3 100644 --- a/src/common/Session.cpp +++ b/src/common/Session.cpp @@ -32,6 +32,7 @@ namespace SDDM { : m_valid(false) , m_type(UnknownSession) , m_isHidden(false) + , m_isNoDisplay(false) { } @@ -111,6 +112,11 @@ namespace SDDM { return m_isHidden; } + bool Session::isNoDisplay() const + { + return m_isNoDisplay; + } + void Session::setTo(Type type, const QString &_fileName) { QString fileName(_fileName); @@ -177,6 +183,8 @@ namespace SDDM { m_desktopNames = line.mid(13).replace(QLatin1Char(';'), QLatin1Char(':')); if (line.startsWith(QLatin1String("Hidden="))) m_isHidden = line.mid(7).toLower() == QLatin1String("true"); + if (line.startsWith(QLatin1String("NoDisplay="))) + m_isNoDisplay = line.mid(10).toLower() == QLatin1String("true"); } file.close(); diff --git a/src/common/Session.h b/src/common/Session.h index c8c527e..d285a3f 100644 --- a/src/common/Session.h +++ b/src/common/Session.h @@ -60,6 +60,7 @@ namespace SDDM { QString desktopNames() const; bool isHidden() const; + bool isNoDisplay() const; void setTo(Type type, const QString &name); @@ -79,6 +80,7 @@ namespace SDDM { QString m_xdgSessionType; QString m_desktopNames; bool m_isHidden; + bool m_isNoDisplay; friend class SessionModel; }; diff --git a/src/greeter/SessionModel.cpp b/src/greeter/SessionModel.cpp index 27e8c40..2a3c091 100644 --- a/src/greeter/SessionModel.cpp +++ b/src/greeter/SessionModel.cpp @@ -143,7 +143,7 @@ namespace SDDM { } } // add to sessions list - if (!si->isHidden() && execAllowed) + if (!si->isHidden() && !si->isNoDisplay() && execAllowed) d->sessions.push_back(si); else delete si; -- 2.16.2