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