summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorDavid Herrmann <dh.herrmann@gmail.com>2015-07-16 18:46:12 +0200
committerSven Eden <yamakuzure@gmx.net>2017-03-14 10:07:01 +0100
commitf08ce65bef386c42d6a1c0171dac612512772c70 (patch)
treeb4afc6a28b0329b3e422ab395e7e4de0ac5f4115 /src
parent42c23dcd12e2b65f7b16b560cabdaf46bafaefec (diff)
logind: never select closing sessions for a VT
If a session is in closing state (and already got rid of its VT), then never re-select it for that VT. There is no reason why we should grant something to a session that is already going away *AND* already got rid of exactly that.
Diffstat (limited to 'src')
-rw-r--r--src/login/logind-seat.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/login/logind-seat.c b/src/login/logind-seat.c
index 3daaf000e..5c15ff3a8 100644
--- a/src/login/logind-seat.c
+++ b/src/login/logind-seat.c
@@ -454,7 +454,7 @@ void seat_evict_position(Seat *s, Session *session) {
* position (eg., during gdm->session transition), so let's look
* for it and set it on the free slot. */
LIST_FOREACH(sessions_by_seat, iter, s->sessions) {
- if (iter->position == pos) {
+ if (iter->position == pos && session_get_state(iter) != SESSION_CLOSING) {
s->positions[pos] = iter;
break;
}