summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorCosimo Alfarano <cosimo.alfarano@collabora.co.uk>2010-02-12 18:39:03 +0000
committerCosimo Alfarano <cosimo.alfarano@collabora.co.uk>2010-02-12 19:26:07 +0000
commite5d921b41f216915d5b53097e269b2749842669f (patch)
treeb0ac331f5fbc04309c5242a5a554dcfb0df39ccd /src
parentcee3717ee97bfd4a3a116c4dd4d49a8d25c5c8d1 (diff)
use tp_dbus_daemon_dup() and proper unref
Diffstat (limited to 'src')
-rw-r--r--src/telepathy-logger.c30
1 files changed, 19 insertions, 11 deletions
diff --git a/src/telepathy-logger.c b/src/telepathy-logger.c
index 75b2411..7f3b832 100644
--- a/src/telepathy-logger.c
+++ b/src/telepathy-logger.c
@@ -39,6 +39,7 @@ static GMainLoop *loop = NULL;
static TpDebugSender *debug_sender = NULL;
static gboolean stamp_logs = FALSE;
+
static void
log_to_debug_sender (const gchar *log_domain,
GLogLevelFlags log_level,
@@ -54,6 +55,7 @@ log_to_debug_sender (const gchar *log_domain,
string);
}
+
static void
log_handler (const gchar *log_domain,
GLogLevelFlags log_level,
@@ -92,28 +94,34 @@ static void
telepathy_logger_dbus_init (void)
{
TplDBusService *dbus_srv = NULL;
- DBusGConnection *bus = NULL;
TpDBusDaemon *tp_bus = NULL;
GError *error = NULL;
- bus = tp_get_bus ();
- tp_bus = tp_dbus_daemon_new (bus);
- if (tp_dbus_daemon_request_name (tp_bus, TPL_DBUS_SRV_WELL_KNOWN_BUS_NAME,
- TRUE, &error))
+ tp_bus = tp_dbus_daemon_dup (&error);
+ if (tp_bus == NULL)
{
- DEBUG ("%s DBus well known name registered",
- TPL_DBUS_SRV_WELL_KNOWN_BUS_NAME);
+ g_critical ("Failed to acquire bus daemon: %s", error->message);
+ goto out;
}
- else
+
+ if (!tp_dbus_daemon_request_name (tp_bus, TPL_DBUS_SRV_WELL_KNOWN_BUS_NAME,
+ FALSE, &error))
{
- DEBUG ("Well Known name request error: %s", error->message);
- g_error_free (error);
+ g_critical ("Failed to acquire bus name %s: %s",
+ TPL_DBUS_SRV_WELL_KNOWN_BUS_NAME, error->message);
+ goto out;
}
dbus_srv = tpl_dbus_service_new ();
- dbus_g_connection_register_g_object (bus, TPL_DBUS_SRV_OBJECT_PATH,
+ dbus_g_connection_register_g_object (tp_get_bus(), TPL_DBUS_SRV_OBJECT_PATH,
G_OBJECT (dbus_srv));
+
+out:
+ if (error != NULL)
+ g_error_free (error);
+ g_object_unref (tp_bus);
+ g_object_unref (dbus_srv);
}