chiark / gitweb /
login: re-use VT-sessions if they already exist
[elogind.git] / src / login / logind-dbus.c
index 640ae92f7f9cbdb1f8de6ca0a85c0450cce51fe0..659ce18a48869649bf3999f9832562f32b7a36b2 100644 (file)
@@ -690,6 +690,8 @@ static int method_create_session(sd_bus_message *message, void *userdata, sd_bus
         }
 
         manager_get_session_by_pid(m, leader, &session);
+        if (!session && vtnr > 0)
+                session = (vtnr < m->seat0->position_count) ? m->seat0->positions[vtnr] : NULL;
         if (session) {
                 _cleanup_free_ char *path = NULL;
                 _cleanup_close_ int fifo_fd = -1;