diff -upr gdm-2.24.0-org/daemon/gdm-manager.c gdm-2.24.0/daemon/gdm-manager.c --- gdm-2.24.0-org/daemon/gdm-manager.c 2008-07-29 11:40:42.000000000 +0900 +++ gdm-2.24.0/daemon/gdm-manager.c 2008-11-19 02:11:55.000000000 +0900 @@ -328,9 +328,7 @@ gdm_manager_constructor (GType manager->priv->local_factory = gdm_local_display_factory_new (manager->priv->display_store); #ifdef HAVE_LIBXDMCP - if (manager->priv->xdmcp_enabled) { - manager->priv->xdmcp_factory = gdm_xdmcp_display_factory_new (manager->priv->display_store); - } + manager->priv->xdmcp_factory = gdm_xdmcp_display_factory_new (manager->priv->display_store); #endif return G_OBJECT (manager); diff -upr gdm-2.24.0-org/daemon/gdm-xdmcp-display-factory.c gdm-2.24.0/daemon/gdm-xdmcp-display-factory.c --- gdm-2.24.0-org/daemon/gdm-xdmcp-display-factory.c 2008-11-15 22:43:39.000000000 +0900 +++ gdm-2.24.0/daemon/gdm-xdmcp-display-factory.c 2008-11-16 10:47:32.000000000 +0900 @@ -2044,6 +2052,10 @@ gdm_xdmcp_display_create (GdmXdmcpDispla store = gdm_display_factory_get_display_store (GDM_DISPLAY_FACTORY (factory)); gdm_display_store_add (store, display); + if (! gdm_display_manage (display)) { + gdm_display_unmanage (display); + } + factory->priv->num_pending_sessions++; out: