summaryrefslogtreecommitdiff
path: root/utils
diff options
context:
space:
mode:
authorWilliam Jon McCann <jmccann@redhat.com>2008-03-12 16:17:59 +0000
committerWilliam Jon McCann <mccann@src.gnome.org>2008-03-12 16:17:59 +0000
commitc4044c72515b300fc44bd7905518e74a5c9b0c99 (patch)
tree0d93d67c3c6c5674a0f5e7b7b075ed68125ef575 /utils
parent875e522d01c865837c04a5b1bf177cfaed936a7a (diff)
downloadgdm-c4044c72515b300fc44bd7905518e74a5c9b0c99.tar.gz
Fix a few leaks and make sure we don't unref null replies.
2008-03-12 William Jon McCann <jmccann@redhat.com> * daemon/gdm-chooser-server.c: (handle_select_hostname), (handle_disconnect), (do_introspect): * daemon/gdm-product-slave.c: (send_dbus_string_method), (send_dbus_void_method): * daemon/gdm-session-worker.c: (send_dbus_string_method), (send_dbus_int_method), (send_dbus_void_method): * daemon/gdm-slave.c: (activate_session_id), (session_unlock): * gui/simple-chooser/gdm-chooser-client.c: (send_dbus_string_method), (send_dbus_void_method): * gui/simple-greeter/gdm-greeter-client.c: (send_dbus_string_method), (send_dbus_bool_method), (send_dbus_void_method): * gui/simple-greeter/gdm-greeter-session.c: (send_dbus_string_method): * gui/simple-greeter/gdm-user-manager.c: (activate_session_id): * utils/gdmflexiserver.c: (create_transient_display), (get_current_session_id), (get_seat_id_for_session), (activate_session_id), (session_is_login_window), (seat_can_activate_sessions): Fix a few leaks and make sure we don't unref null replies. svn path=/trunk/; revision=6011
Diffstat (limited to 'utils')
-rw-r--r--utils/gdmflexiserver.c55
1 files changed, 48 insertions, 7 deletions
diff --git a/utils/gdmflexiserver.c b/utils/gdmflexiserver.c
index e1666f8d..e57f6436 100644
--- a/utils/gdmflexiserver.c
+++ b/utils/gdmflexiserver.c
@@ -147,6 +147,7 @@ create_transient_display (DBusConnection *connection)
const char *value;
ret = FALSE;
+ reply = NULL;
dbus_error_init (&local_error);
message = dbus_message_new_method_call (GDM_DBUS_NAME,
@@ -174,10 +175,15 @@ create_transient_display (DBusConnection *connection)
dbus_message_iter_get_basic (&iter, &value);
g_debug ("Started %s", value);
- dbus_message_unref (reply);
-
ret = TRUE;
out:
+ if (message != NULL) {
+ dbus_message_unref (message);
+ }
+ if (reply != NULL) {
+ dbus_message_unref (reply);
+ }
+
return ret;
}
@@ -193,6 +199,7 @@ get_current_session_id (DBusConnection *connection,
const char *value;
ret = FALSE;
+ reply = NULL;
dbus_error_init (&local_error);
message = dbus_message_new_method_call (CK_NAME,
@@ -221,10 +228,16 @@ get_current_session_id (DBusConnection *connection,
if (session_id != NULL) {
*session_id = g_strdup (value);
}
- dbus_message_unref (reply);
ret = TRUE;
out:
+ if (message != NULL) {
+ dbus_message_unref (message);
+ }
+ if (reply != NULL) {
+ dbus_message_unref (reply);
+ }
+
return ret;
}
@@ -241,6 +254,7 @@ get_seat_id_for_session (DBusConnection *connection,
const char *value;
ret = FALSE;
+ reply = NULL;
dbus_error_init (&local_error);
message = dbus_message_new_method_call (CK_NAME,
@@ -269,10 +283,16 @@ get_seat_id_for_session (DBusConnection *connection,
if (seat_id != NULL) {
*seat_id = g_strdup (value);
}
- dbus_message_unref (reply);
ret = TRUE;
out:
+ if (message != NULL) {
+ dbus_message_unref (message);
+ }
+ if (reply != NULL) {
+ dbus_message_unref (reply);
+ }
+
return ret;
}
@@ -306,6 +326,7 @@ activate_session_id (DBusConnection *connection,
gboolean ret;
ret = FALSE;
+ reply = NULL;
g_debug ("Switching to session %s", session_id);
@@ -340,6 +361,13 @@ activate_session_id (DBusConnection *connection,
ret = TRUE;
out:
+ if (message != NULL) {
+ dbus_message_unref (message);
+ }
+ if (reply != NULL) {
+ dbus_message_unref (reply);
+ }
+
return ret;
}
@@ -355,6 +383,7 @@ session_is_login_window (DBusConnection *connection,
const char *value;
ret = FALSE;
+ reply = NULL;
dbus_error_init (&local_error);
message = dbus_message_new_method_call (CK_NAME,
@@ -385,10 +414,15 @@ session_is_login_window (DBusConnection *connection,
goto out;
}
- dbus_message_unref (reply);
-
ret = TRUE;
out:
+ if (message != NULL) {
+ dbus_message_unref (message);
+ }
+ if (reply != NULL) {
+ dbus_message_unref (reply);
+ }
+
return ret;
}
@@ -403,6 +437,7 @@ seat_can_activate_sessions (DBusConnection *connection,
gboolean can_activate;
can_activate = FALSE;
+ reply = NULL;
dbus_error_init (&local_error);
message = dbus_message_new_method_call (CK_NAME,
@@ -428,9 +463,15 @@ seat_can_activate_sessions (DBusConnection *connection,
dbus_message_iter_init (reply, &iter);
dbus_message_iter_get_basic (&iter, &can_activate);
- dbus_message_unref (reply);
out:
+ if (message != NULL) {
+ dbus_message_unref (message);
+ }
+ if (reply != NULL) {
+ dbus_message_unref (reply);
+ }
+
return can_activate;
}