From 88642511bb9c6f66d2fe4aae1550893eb0d781b2 Mon Sep 17 00:00:00 2001 From: Jonny Lamb Date: Tue, 3 Apr 2012 11:13:55 -0400 Subject: stop using deprecated tp-glib functions tp_*_call_when_ready were replaced by tp_proxy_prepare_async a while ago. Signed-off-by: Jonny Lamb --- NEWS | 4 +++- src/mcd-channel.c | 26 +++++++++++++++++++------- src/mcd-connection.c | 24 ++++++++++++++++-------- src/mcd-manager.c | 14 +++++++++----- 4 files changed, 47 insertions(+), 21 deletions(-) diff --git a/NEWS b/NEWS index ec455e4d..6ceb24af 100644 --- a/NEWS +++ b/NEWS @@ -1,7 +1,9 @@ telepathy-mission-control 5.12.1 (UNRELEASED) ============================================= -... +Fixes: + +• Stop using deprecated telepathy-glib symbols. (Jonny) telepathy-mission-control 5.12.0 (2012-04-02) ============================================= diff --git a/src/mcd-channel.c b/src/mcd-channel.c index 64d12a4d..2d6d173b 100644 --- a/src/mcd-channel.c +++ b/src/mcd-channel.c @@ -191,11 +191,20 @@ _mcd_channel_setup_group (McdChannel *channel) } static void -on_channel_ready (TpChannel *tp_chan, const GError *error, gpointer user_data) +on_channel_ready (GObject *source_object, GAsyncResult *result, gpointer user_data) { + TpChannel *tp_chan = TP_CHANNEL (source_object); McdChannel *channel, **channel_ptr = user_data; McdChannelPrivate *priv; gboolean requested, valid; + GError *error = NULL; + + if (!tp_proxy_prepare_finish (tp_chan, result, &error)) + { + DEBUG ("failed to prepare channel: %s", error->message); + g_clear_error (&error); + return; + } channel = *channel_ptr; if (channel) @@ -296,7 +305,7 @@ _mcd_channel_setup (McdChannel *channel, McdChannelPrivate *priv) channel_ptr = g_slice_alloc (sizeof (McdChannel *)); *channel_ptr = channel; g_object_add_weak_pointer ((GObject *)channel, (gpointer)channel_ptr); - tp_channel_call_when_ready (priv->tp_chan, on_channel_ready, channel_ptr); + tp_proxy_prepare_async (priv->tp_chan, NULL, on_channel_ready, channel_ptr); g_signal_connect (priv->tp_chan, "invalidated", G_CALLBACK (proxy_destroyed), channel); @@ -1389,18 +1398,21 @@ typedef struct { } DepartData; static void -mcd_channel_ready_to_depart_cb (TpChannel *channel, - const GError *error, +mcd_channel_ready_to_depart_cb (GObject *source_object, + GAsyncResult *result, gpointer data) { + TpChannel *channel = TP_CHANNEL (source_object); DepartData *d = data; + GError *error = NULL; - if (error != NULL) + if (!tp_proxy_prepare_finish (channel, result, &error)) { DEBUG ("%s %d: %s", g_quark_to_string (error->domain), error->code, error->message); g_free (d->message); g_slice_free (DepartData, d); + g_clear_error (&error); return; } @@ -1456,8 +1468,8 @@ _mcd_channel_depart (McdChannel *channel, d->reason = reason; d->message = g_strdup (message); - tp_channel_call_when_ready (channel->priv->tp_chan, - mcd_channel_ready_to_depart_cb, d); + tp_proxy_prepare_async (channel->priv->tp_chan, NULL, + mcd_channel_ready_to_depart_cb, d); } /* diff --git a/src/mcd-connection.c b/src/mcd-connection.c index 40a59520..d5ac2408 100644 --- a/src/mcd-connection.c +++ b/src/mcd-connection.c @@ -1561,21 +1561,25 @@ mcd_connection_setup_pre_requests (McdConnection *connection) } static void -on_connection_ready (TpConnection *tp_conn, const GError *error, - gpointer user_data) +on_connection_ready (GObject *source_object, GAsyncResult *result, + gpointer user_data) { + TpConnection *tp_conn = TP_CONNECTION (source_object); McdConnection *connection, **connection_ptr = user_data; McdConnectionPrivate *priv; + GError *error = NULL; connection = *connection_ptr; if (connection) g_object_remove_weak_pointer ((GObject *)connection, (gpointer)connection_ptr); g_slice_free (McdConnection *, connection_ptr); - if (error) + + if (!tp_proxy_prepare_finish (tp_conn, result, &error)) { DEBUG ("got error: %s", error->message); - return; + g_clear_error (&error); + return; } if (!connection) return; @@ -2288,7 +2292,7 @@ _mcd_connection_request_channel (McdConnection *connection, McdChannel *channel) g_return_val_if_fail (priv->tp_conn != NULL, FALSE); g_return_val_if_fail (TP_IS_CONNECTION (priv->tp_conn), FALSE); - if (!tp_connection_is_ready (priv->tp_conn)) + if (!tp_proxy_is_prepared (priv->tp_conn, TP_CONNECTION_FEATURE_CONNECTED)) { /* don't request any channel until the connection is ready (because we * don't know if the CM implements the Requests interface). The channel @@ -2716,6 +2720,10 @@ _mcd_connection_set_tp_connection (McdConnection *connection, { McdConnection **connection_ptr; McdConnectionPrivate *priv; + GQuark features[] = { + TP_CONNECTION_FEATURE_CONNECTED, + 0 + }; g_return_if_fail (MCD_IS_CONNECTION (connection)); priv = connection->priv; @@ -2763,8 +2771,8 @@ _mcd_connection_set_tp_connection (McdConnection *connection, *connection_ptr = connection; g_object_add_weak_pointer ((GObject *)connection, (gpointer)connection_ptr); - tp_connection_call_when_ready (priv->tp_conn, on_connection_ready, - connection_ptr); + tp_proxy_prepare_async (priv->tp_conn, features, + on_connection_ready, connection_ptr); } /** @@ -2786,7 +2794,7 @@ _mcd_connection_is_ready (McdConnection *self) g_return_val_if_fail (MCD_IS_CONNECTION (self), FALSE); return (self->priv->tp_conn != NULL) && - tp_connection_is_ready (self->priv->tp_conn); + tp_proxy_is_prepared (self->priv->tp_conn, TP_CONNECTION_FEATURE_CONNECTED); } gboolean diff --git a/src/mcd-manager.c b/src/mcd-manager.c index d19cfc09..1098cc3a 100644 --- a/src/mcd-manager.c +++ b/src/mcd-manager.c @@ -79,16 +79,21 @@ enum static GQuark readiness_quark = 0; static void -on_manager_ready (TpConnectionManager *tp_conn_mgr, const GError *error, - gpointer user_data, GObject *weak_object) +on_manager_ready (GObject *source_object, + GAsyncResult *result, gpointer user_data) { - McdManager *manager = MCD_MANAGER (weak_object); + TpConnectionManager *tp_conn_mgr = TP_CONNECTION_MANAGER (source_object); + McdManager *manager = MCD_MANAGER (user_data); McdManagerPrivate *priv; + GError *error = NULL; + + tp_proxy_prepare_finish (tp_conn_mgr, result, &error); priv = manager->priv; DEBUG ("manager %s is ready", priv->name); priv->ready = TRUE; _mcd_object_ready (manager, readiness_quark, error); + g_clear_error (&error); } static gint @@ -198,8 +203,7 @@ mcd_manager_setup (McdManager *manager) goto error; } - tp_connection_manager_call_when_ready (priv->tp_conn_mgr, on_manager_ready, - NULL, NULL, (GObject *)manager); + tp_proxy_prepare_async (priv->tp_conn_mgr, NULL, on_manager_ready, manager); DEBUG ("Manager %s created", priv->name); return TRUE; -- cgit v1.2.1