From af841691f3e48ff7635df21703115c5b109ba9dc Mon Sep 17 00:00:00 2001 From: Ray Strode Date: Fri, 31 Mar 2017 14:58:26 -0400 Subject: [PATCH 08/13] xdmcp-display-factory: fix signal prototype The callback was getting called with the wrong arguments leading to spew in the logs and necessary code not getting run! --- daemon/gdm-xdmcp-display-factory.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/daemon/gdm-xdmcp-display-factory.c b/daemon/gdm-xdmcp-display-factory.c index b9ab921c..c5f7ddb4 100644 --- a/daemon/gdm-xdmcp-display-factory.c +++ b/daemon/gdm-xdmcp-display-factory.c @@ -2023,61 +2023,62 @@ on_hostname_selected (GdmXdmcpChooserDisplay *display, #ifdef AI_V4MAPPED hints.ai_flags = AI_V4MAPPED; #endif xdmcp_port = g_strdup_printf ("%d", XDM_UDP_PORT); if ((gaierr = getaddrinfo (hostname, xdmcp_port, &hints, &ai_list)) != 0) { g_warning ("Unable to get address: %s", gai_strerror (gaierr)); g_free (xdmcp_port); return; } g_free (xdmcp_port); /* just take the first one */ ai = ai_list; if (ai != NULL) { char *ip; ic->chosen_address = gdm_address_new_from_sockaddr (ai->ai_addr, ai->ai_addrlen); ip = NULL; gdm_address_get_numeric_info (ic->chosen_address, &ip, NULL); g_debug ("GdmXdmcpDisplayFactory: hostname resolves to %s", ip ? ip : "(null)"); g_free (ip); } freeaddrinfo (ai_list); } static void -on_client_disconnected (GdmDisplay *display) +on_client_disconnected (GdmSession *session, + GdmDisplay *display) { if (gdm_display_get_status (display) != GDM_DISPLAY_MANAGED) return; gdm_display_unmanage (display); gdm_display_finish (display); } static void on_display_status_changed (GdmDisplay *display, GParamSpec *arg1, GdmXdmcpDisplayFactory *factory) { int status; GdmDisplayStore *store; GdmLaunchEnvironment *launch_environment; GdmSession *session; GdmAddress *address; gint32 session_number; int display_number; store = gdm_display_factory_get_display_store (GDM_DISPLAY_FACTORY (factory)); launch_environment = NULL; g_object_get (display, "launch-environment", &launch_environment, NULL); session = NULL; if (launch_environment != NULL) { session = gdm_launch_environment_get_session (launch_environment); } -- 2.12.0