summaryrefslogtreecommitdiff
path: root/libgdm
diff options
context:
space:
mode:
authorOwen W. Taylor <otaylor@fishsoup.net>2014-10-09 12:24:41 -0400
committerOwen W. Taylor <otaylor@fishsoup.net>2014-10-09 15:16:28 -0400
commitf303808807a9774fbd3693806f3c546dd517f6ea (patch)
tree68ed5281facfbfdb3368a83eb4d89d06d8bb17c8 /libgdm
parent171af9861bf302854118e179678ef28bfedf341c (diff)
downloadgdm-f303808807a9774fbd3693806f3c546dd517f6ea.tar.gz
Unref async results after calling g_simple_async_result_complete_in_idle()
All async results were leaked, since g_simple_async_result_complete_in_idle() takes a new reference rather than assuming the ref passed in. https://bugzilla.gnome.org/show_bug.cgi?id=738246
Diffstat (limited to 'libgdm')
-rw-r--r--libgdm/gdm-client.c26
1 files changed, 26 insertions, 0 deletions
diff --git a/libgdm/gdm-client.c b/libgdm/gdm-client.c
index 3cd298ee..b8020341 100644
--- a/libgdm/gdm-client.c
+++ b/libgdm/gdm-client.c
@@ -104,6 +104,7 @@ on_got_manager (GdmManager *manager,
}
g_simple_async_result_complete_in_idle (operation_result);
+ g_object_unref (operation_result);
}
static void
@@ -126,6 +127,7 @@ get_manager (GdmClient *client,
(GDestroyNotify)
g_object_unref);
g_simple_async_result_complete_in_idle (result);
+ g_object_unref (result);
return;
}
@@ -151,6 +153,7 @@ on_user_verifier_proxy_created (GObject *source,
if (user_verifier == NULL) {
g_simple_async_result_take_error (operation_result, error);
g_simple_async_result_complete_in_idle (operation_result);
+ g_object_unref (operation_result);
return;
}
@@ -161,6 +164,7 @@ on_user_verifier_proxy_created (GObject *source,
(GDestroyNotify)
g_object_unref);
g_simple_async_result_complete_in_idle (operation_result);
+ g_object_unref (operation_result);
}
static void
@@ -175,6 +179,7 @@ on_reauthentication_channel_connected (GDBusConnection *connection,
if (!g_dbus_connection_new_for_address_finish (result, &error)) {
g_simple_async_result_take_error (operation_result, error);
g_simple_async_result_complete_in_idle (operation_result);
+ g_object_unref (operation_result);
return;
}
@@ -205,6 +210,7 @@ on_reauthentication_channel_opened (GdmManager *manager,
&error)) {
g_simple_async_result_take_error (operation_result, error);
g_simple_async_result_complete_in_idle (operation_result);
+ g_object_unref (operation_result);
return;
}
@@ -232,6 +238,7 @@ on_got_manager_for_reauthentication (GdmClient *client,
&error)) {
g_simple_async_result_take_error (operation_result, error);
g_simple_async_result_complete_in_idle (operation_result);
+ g_object_unref (operation_result);
return;
}
@@ -314,6 +321,7 @@ on_connected (GDBusConnection *connection,
&error)) {
g_simple_async_result_take_error (operation_result, error);
g_simple_async_result_complete_in_idle (operation_result);
+ g_object_unref (operation_result);
return;
}
@@ -322,6 +330,7 @@ on_connected (GDBusConnection *connection,
(GDestroyNotify)
g_object_unref);
g_simple_async_result_complete_in_idle (operation_result);
+ g_object_unref (operation_result);
}
static void
@@ -342,6 +351,7 @@ on_session_opened (GdmManager *manager,
&error)) {
g_simple_async_result_take_error (operation_result, error);
g_simple_async_result_complete_in_idle (operation_result);
+ g_object_unref (operation_result);
return;
}
@@ -368,6 +378,7 @@ on_got_manager_for_opening_connection (GdmClient *client,
&error)) {
g_simple_async_result_take_error (operation_result, error);
g_simple_async_result_complete_in_idle (operation_result);
+ g_object_unref (operation_result);
return;
}
@@ -446,6 +457,7 @@ gdm_client_open_connection (GdmClient *client,
(GDestroyNotify)
g_object_unref);
g_simple_async_result_complete_in_idle (operation_result);
+ g_object_unref (operation_result);
return;
}
@@ -685,6 +697,7 @@ on_connection_opened_for_user_verifier (GdmClient *client,
if (!gdm_client_open_connection_finish (client, result, &error)) {
g_simple_async_result_take_error (operation_result, error);
g_simple_async_result_complete_in_idle (operation_result);
+ g_object_unref (operation_result);
return;
}
@@ -735,6 +748,7 @@ gdm_client_get_user_verifier (GdmClient *client,
(GDestroyNotify)
g_object_unref);
g_simple_async_result_complete_in_idle (operation_result);
+ g_object_unref (operation_result);
return;
}
@@ -825,6 +839,7 @@ on_greeter_proxy_created (GObject *source,
if (greeter == NULL) {
g_simple_async_result_take_error (operation_result, error);
g_simple_async_result_complete_in_idle (operation_result);
+ g_object_unref (operation_result);
return;
}
@@ -833,6 +848,7 @@ on_greeter_proxy_created (GObject *source,
(GDestroyNotify)
g_object_unref);
g_simple_async_result_complete_in_idle (operation_result);
+ g_object_unref (operation_result);
query_for_timed_login_requested_signal (greeter);
}
@@ -849,6 +865,7 @@ on_connection_opened_for_greeter (GdmClient *client,
if (!gdm_client_open_connection_finish (client, result, &error)) {
g_simple_async_result_take_error (operation_result, error);
g_simple_async_result_complete_in_idle (operation_result);
+ g_object_unref (operation_result);
return;
}
@@ -899,6 +916,7 @@ gdm_client_get_greeter (GdmClient *client,
(GDestroyNotify)
g_object_unref);
g_simple_async_result_complete_in_idle (operation_result);
+ g_object_unref (operation_result);
return;
}
@@ -1021,6 +1039,7 @@ on_remote_greeter_proxy_created (GObject *object,
if (remote_greeter == NULL) {
g_simple_async_result_take_error (operation_result, error);
g_simple_async_result_complete_in_idle (operation_result);
+ g_object_unref (operation_result);
return;
}
@@ -1029,6 +1048,7 @@ on_remote_greeter_proxy_created (GObject *object,
(GDestroyNotify)
g_object_unref);
g_simple_async_result_complete_in_idle (operation_result);
+ g_object_unref (operation_result);
}
static void
@@ -1043,6 +1063,7 @@ on_connection_opened_for_remote_greeter (GdmClient *client,
if (!gdm_client_open_connection_finish (client, result, &error)) {
g_simple_async_result_take_error (operation_result, error);
g_simple_async_result_complete_in_idle (operation_result);
+ g_object_unref (operation_result);
return;
}
@@ -1093,6 +1114,7 @@ gdm_client_get_remote_greeter (GdmClient *client,
(GDestroyNotify)
g_object_unref);
g_simple_async_result_complete_in_idle (operation_result);
+ g_object_unref (operation_result);
return;
}
@@ -1212,6 +1234,7 @@ on_chooser_proxy_created (GObject *source,
if (chooser == NULL) {
g_simple_async_result_take_error (operation_result, error);
g_simple_async_result_complete_in_idle (operation_result);
+ g_object_unref (operation_result);
return;
}
@@ -1220,6 +1243,7 @@ on_chooser_proxy_created (GObject *source,
(GDestroyNotify)
g_object_unref);
g_simple_async_result_complete_in_idle (operation_result);
+ g_object_unref (operation_result);
}
static void
@@ -1234,6 +1258,7 @@ on_connection_opened_for_chooser (GdmClient *client,
if (!gdm_client_open_connection_finish (client, result, &error)) {
g_simple_async_result_take_error (operation_result, error);
g_simple_async_result_complete_in_idle (operation_result);
+ g_object_unref (operation_result);
return;
}
@@ -1284,6 +1309,7 @@ gdm_client_get_chooser (GdmClient *client,
(GDestroyNotify)
g_object_unref);
g_simple_async_result_complete_in_idle (operation_result);
+ g_object_unref (operation_result);
return;
}