summaryrefslogtreecommitdiff
path: root/src/logind-session.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/logind-session.c')
-rw-r--r--src/logind-session.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/logind-session.c b/src/logind-session.c
index 7bdf487e8d..c10f5e62c9 100644
--- a/src/logind-session.c
+++ b/src/logind-session.c
@@ -174,6 +174,7 @@ int session_load(Session *s) {
int session_activate(Session *s) {
int r;
+ Session *old_active;
assert(s);
@@ -192,9 +193,13 @@ int session_activate(Session *s) {
if (r < 0)
return r;
+ old_active = s->seat->active;
s->seat->active = s;
- return seat_apply_acls(s->seat);
+ seat_apply_acls(s->seat, old_active);
+ manager_spawn_autovt(s->manager, s->vtnr);
+
+ return 0;
}
bool x11_display_is_local(const char *display) {