[telepathy-gabble/master] Add a boolean to keep track of whether or not relay info has been retrieved.
Mike Ruprecht
mike.ruprecht at collabora.co.uk
Tue Dec 29 05:35:03 PST 2009
---
src/call-stream.c | 10 +++++++++-
1 files changed, 9 insertions(+), 1 deletions(-)
diff --git a/src/call-stream.c b/src/call-stream.c
index dc508e1..6f9478e 100644
--- a/src/call-stream.c
+++ b/src/call-stream.c
@@ -86,6 +86,8 @@ struct _GabbleCallStreamPrivate
GabbleJingleContent *content;
GList *endpoints;
GPtrArray *relay_info;
+
+ gboolean got_relay_info;
};
static void
@@ -297,7 +299,11 @@ google_relay_session_cb (GPtrArray *relays,
priv->relay_info =
g_boxed_copy (TP_ARRAY_TYPE_STRING_VARIANT_MAP_LIST, relays);
- maybe_emit_server_info_retrieved (user_data);
+ if (!priv->got_relay_info)
+ {
+ priv->got_relay_info = TRUE;
+ maybe_emit_server_info_retrieved (user_data);
+ }
}
static void
@@ -342,6 +348,8 @@ gabble_call_stream_constructed (GObject *obj)
g_object_unref (connection);
}
+ else
+ priv->got_relay_info = TRUE;
if (G_OBJECT_CLASS (gabble_call_stream_parent_class)->constructed != NULL)
G_OBJECT_CLASS (gabble_call_stream_parent_class)->constructed (obj);
--
1.5.6.5
More information about the telepathy-commits
mailing list