logind: release VT-positions when closing sessions

Make sure we release VT-positions when a session is closed. Otherwise,
lingering sessions will occupy VTs and prevent next logins from
succeeding.

Note that we already release session-devices when closing a session, so
there cannot be anyone using the VT anymore.
This commit is contained in:
David Herrmann 2015-07-31 16:52:29 +02:00
parent b506d3141b
commit 10189fd6be

View file

@ -636,6 +636,9 @@ int session_stop(Session *s, bool force) {
s->timer_event_source = sd_event_source_unref(s->timer_event_source);
if (s->seat)
seat_evict_position(s->seat, s);
/* We are going down, don't care about FIFOs anymore */
session_remove_fifo(s);
@ -672,6 +675,9 @@ int session_finalize(Session *s) {
s->timer_event_source = sd_event_source_unref(s->timer_event_source);
if (s->seat)
seat_evict_position(s->seat, s);
/* Kill session devices */
while ((sd = hashmap_first(s->devices)))
session_device_free(sd);