summaryrefslogtreecommitdiff
path: root/daemon
diff options
context:
space:
mode:
authorRay Strode <rstrode@redhat.com>2015-02-16 19:36:47 -0500
committerRay Strode <rstrode@redhat.com>2015-02-18 17:34:15 -0500
commit8a3b7cf1452fb63a2c5b0e9b18848e293330bf44 (patch)
tree070510dc4e8a43014ae508eee0ce04a51256e6ac /daemon
parentcf31b8ffb7f5d6567116f81488bd68dc646b356a (diff)
downloadgdm-8a3b7cf1452fb63a2c5b0e9b18848e293330bf44.tar.gz
local-display-factory: only set is-initial on first seat0 display
is-initial is for hardcoding vt1 on the X server command line. VTs only make sense on seat0, so GdmServer as ignoring is-initial on auxilliary seats. This commit makes sure that is-initial never gets set in the first place for auxilliary seats, and deletes the code the overrides its value. https://bugzilla.gnome.org/show_bug.cgi?id=744764
Diffstat (limited to 'daemon')
-rw-r--r--daemon/gdm-local-display-factory.c13
-rw-r--r--daemon/gdm-server.c9
2 files changed, 11 insertions, 11 deletions
diff --git a/daemon/gdm-local-display-factory.c b/daemon/gdm-local-display-factory.c
index 07a02b44..f76af735 100644
--- a/daemon/gdm-local-display-factory.c
+++ b/daemon/gdm-local-display-factory.c
@@ -452,8 +452,17 @@ static gboolean gdm_local_display_factory_sync_seats (GdmLocalDisplayFactory *fa
array = g_variant_get_child_value (result, 0);
g_variant_iter_init (&iter, array);
- while (g_variant_iter_loop (&iter, "(&so)", &seat, NULL))
- create_display (factory, seat, TRUE);
+ while (g_variant_iter_loop (&iter, "(&so)", &seat, NULL)) {
+ gboolean is_initial;
+
+ if (g_strcmp0 (seat, "seat0") == 0) {
+ is_initial = TRUE;
+ } else {
+ is_initial = FALSE;
+ }
+
+ create_display (factory, seat, is_initial);
+ }
g_variant_unref (result);
g_variant_unref (array);
diff --git a/daemon/gdm-server.c b/daemon/gdm-server.c
index ccb26a34..bacc0800 100644
--- a/daemon/gdm-server.c
+++ b/daemon/gdm-server.c
@@ -808,15 +808,6 @@ gdm_server_start (GdmServer *server)
/* Hardcode the VT for the initial X server, but nothing else */
if (server->priv->is_initial) {
vtarg = "vt" GDM_INITIAL_VT;
-
-#ifdef WITH_SYSTEMD
- /* undo the hardcoding if we are an auxillary seat */
- if (LOGIND_RUNNING()) {
- if (strcmp (server->priv->display_seat_id, "seat0") != 0) {
- vtarg = NULL;
- }
- }
-#endif
}
/* fork X server process */