[empathy] Don't set empty values for the default EmpathyHandler
- From: Cosimo Cecchi <cosimoc src gnome org>
- To: svn-commits-list gnome org
- Cc:
- Subject: [empathy] Don't set empty values for the default EmpathyHandler
- Date: Tue, 1 Sep 2009 14:50:30 +0000 (UTC)
commit 182f1d1d62275355fa248fcdb9ea9b9a09a60e08
Author: Cosimo Cecchi <cosimoc gnome org>
Date: Tue Sep 1 15:48:59 2009 +0200
Don't set empty values for the default EmpathyHandler
This implies the following:
- have an empty default handler when the Dispatcher is used directly
with the singleton
- autogenerate the name for the default handler
- set priv->filters in the handler to an empty GPtrArray in this case,
as that can't be NULL.
libempathy/empathy-dispatcher.c | 3 +++
libempathy/empathy-handler.c | 11 +++++++++++
2 files changed, 14 insertions(+), 0 deletions(-)
---
diff --git a/libempathy/empathy-dispatcher.c b/libempathy/empathy-dispatcher.c
index 7aec414..fca24da 100644
--- a/libempathy/empathy-dispatcher.c
+++ b/libempathy/empathy-dispatcher.c
@@ -890,6 +890,9 @@ dispatcher_constructor (GType type,
priv = GET_PRIV (dispatcher);
+ if (priv->handler == NULL)
+ priv->handler = empathy_handler_new (NULL, NULL, NULL);
+
empathy_handler_set_handle_channels_func (priv->handler,
empathy_dispatcher_handle_channels,
dispatcher);
diff --git a/libempathy/empathy-handler.c b/libempathy/empathy-handler.c
index 6499030..9a59788 100644
--- a/libempathy/empathy-handler.c
+++ b/libempathy/empathy-handler.c
@@ -141,12 +141,23 @@ handler_set_property (GObject *object,
{
case PROP_CHANNEL_FILTER:
priv->filters = g_value_dup_boxed (value);
+ if (priv->filters == NULL)
+ priv->filters = g_ptr_array_new ();
break;
case PROP_CAPABILITIES:
priv->capabilities = g_value_dup_boxed (value);
break;
case PROP_NAME:
priv->name = g_value_dup_string (value);
+ if (EMP_STR_EMPTY (priv->name))
+ {
+ TpDBusDaemon *bus;
+
+ bus = tp_dbus_daemon_dup (NULL);
+ priv->name = g_strdup_printf ("%s%p",
+ tp_dbus_daemon_get_unique_name (bus), object);
+ g_object_unref (bus);
+ }
break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]