summaryrefslogtreecommitdiffstats
path: root/dbus/dbus-server-debug.c
diff options
context:
space:
mode:
Diffstat (limited to 'dbus/dbus-server-debug.c')
-rw-r--r--dbus/dbus-server-debug.c20
1 files changed, 10 insertions, 10 deletions
diff --git a/dbus/dbus-server-debug.c b/dbus/dbus-server-debug.c
index 57d68066..f558e82e 100644
--- a/dbus/dbus-server-debug.c
+++ b/dbus/dbus-server-debug.c
@@ -231,8 +231,8 @@ dbus_bool_t
_dbus_server_debug_accept_transport (DBusServer *server,
DBusTransport *transport)
{
- DBusTimeout *timeout;
- ServerAndTransport *st;
+ DBusTimeout *timeout = NULL;
+ ServerAndTransport *st = NULL;
st = dbus_new (ServerAndTransport, 1);
if (st == NULL)
@@ -244,18 +244,18 @@ _dbus_server_debug_accept_transport (DBusServer *server,
timeout = _dbus_timeout_new (DEFAULT_INTERVAL, handle_new_client, st, dbus_free);
if (timeout == NULL)
- {
- dbus_free (st);
- return FALSE;
- }
+ goto failed;
if (!_dbus_server_add_timeout (server, timeout))
- {
- _dbus_timeout_unref (timeout);
- return FALSE;
- }
+ goto failed;
return TRUE;
+
+ failed:
+ dbus_free (st);
+ if (timeout)
+ _dbus_timeout_unref (timeout);
+ return FALSE;
}
/** @} */