changeset 26200:0a6f1f796d21

Use purple_timeout_* instead of g_timeout_*.
author Mike Ruprecht <maiku@soc.pidgin.im>
date Tue, 24 Feb 2009 08:25:23 +0000
parents 6cf36f68033c
children 36c7efb85220
files libpurple/media.c
diffstat 1 files changed, 7 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/libpurple/media.c	Tue Feb 24 08:11:24 2009 +0000
+++ b/libpurple/media.c	Tue Feb 24 08:25:23 2009 +0000
@@ -81,6 +81,7 @@
 	GList *active_remote_candidates;
 
 	gulong window_id;
+	guint connected_cb_id;
 };
 
 struct _PurpleMediaPrivate
@@ -253,7 +254,8 @@
 		return;
 
 	/* Remove the connected_cb timeout */
-	g_source_remove_by_user_data(stream);
+	if (stream->connected_cb_id != 0)
+		purple_timeout_remove(stream->connected_cb_id);
 
 	g_free(stream->participant);
 
@@ -1728,6 +1730,8 @@
 {
 	g_return_val_if_fail(stream != NULL, FALSE);
 
+	stream->connected_cb_id = 0;
+
 	purple_media_manager_create_output_window(
 			stream->session->media->priv->manager,
 			stream->session->media,
@@ -1792,8 +1796,8 @@
 		gst_element_link(stream->tee, stream->sink);
 	}
 
-	g_timeout_add_full(G_PRIORITY_HIGH, 0,
-			(GSourceFunc)purple_media_connected_cb, stream, NULL);
+	stream->connected_cb_id = purple_timeout_add(0,
+			(GSourceFunc)purple_media_connected_cb, stream);
 }
 
 static gboolean