diff options
author | Ray Strode <rstrode@redhat.com> | 2015-02-16 12:48:07 -0500 |
---|---|---|
committer | Ray Strode <rstrode@redhat.com> | 2015-02-17 23:48:07 -0500 |
commit | 926008d3f97c44ad9a07da12962fbdcbddcb55f9 (patch) | |
tree | 210106451182411f2858fbcdeb46100cdef37c99 | |
parent | 26a71c852cb51e7adf5dedcf7810cde05248bfb5 (diff) | |
download | gdm-926008d3f97c44ad9a07da12962fbdcbddcb55f9.tar.gz |
local-display-factory: don't assume display has display number
logind managed displays don't have (known) display numbers, so
we shouldn't assert that there's going to be one on display
status changes.
-rw-r--r-- | daemon/gdm-local-display-factory.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/daemon/gdm-local-display-factory.c b/daemon/gdm-local-display-factory.c index d49bf25e..de2feb7c 100644 --- a/daemon/gdm-local-display-factory.c +++ b/daemon/gdm-local-display-factory.c @@ -271,7 +271,6 @@ on_display_status_changed (GdmDisplay *display, num = -1; gdm_display_get_x11_display_number (display, &num, NULL); - g_assert (num != -1); store = gdm_display_factory_get_display_store (GDM_DISPLAY_FACTORY (factory)); @@ -285,7 +284,9 @@ on_display_status_changed (GdmDisplay *display, case GDM_DISPLAY_FINISHED: /* remove the display number from factory->priv->used_display_numbers so that it may be reused */ - g_hash_table_remove (factory->priv->used_display_numbers, GUINT_TO_POINTER (num)); + if (num != -1) { + g_hash_table_remove (factory->priv->used_display_numbers, GUINT_TO_POINTER (num)); + } gdm_display_store_remove (store, display); /* Create a new equivalent display if it was static */ |