diff options
author | Cosimo Alfarano <cosimo.alfarano@collabora.co.uk> | 2010-02-12 18:39:03 +0000 |
---|---|---|
committer | Cosimo Alfarano <cosimo.alfarano@collabora.co.uk> | 2010-02-12 19:26:07 +0000 |
commit | e5d921b41f216915d5b53097e269b2749842669f (patch) | |
tree | b0ac331f5fbc04309c5242a5a554dcfb0df39ccd /src | |
parent | cee3717ee97bfd4a3a116c4dd4d49a8d25c5c8d1 (diff) | |
download | telepathy-logger-e5d921b41f216915d5b53097e269b2749842669f.tar.gz |
use tp_dbus_daemon_dup() and proper unref
Diffstat (limited to 'src')
-rw-r--r-- | src/telepathy-logger.c | 30 |
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); } |