[telepathy-stream-engine/refs/tags/telepathy-stream-engine_0.5.10] Make iterator generic

Olivier Crête olivier.crete at collabora.co.uk
Mon Oct 26 09:28:25 PDT 2009


---
 src/tp-stream-engine.c |   25 +++++++++++--------------
 1 files changed, 11 insertions(+), 14 deletions(-)

diff --git a/src/tp-stream-engine.c b/src/tp-stream-engine.c
index 4cd6bd4..1d358d5 100644
--- a/src/tp-stream-engine.c
+++ b/src/tp-stream-engine.c
@@ -699,28 +699,26 @@ add_audio_pad (TpStreamEngine *self, GstPad *pad)
 }
 
 static void
-audio_sinkpad_iter (gpointer data, gpointer user_data)
+audio_pad_iter (gpointer data, gpointer user_data)
 {
   TpStreamEngine *self = user_data;
-  GstPad *sinkpad = data;
-  GstPad *srcpad = gst_pad_get_peer (sinkpad);
+  GstPad *pad = data;
+  GstPad *peerpad = gst_pad_get_peer (pad);
 
-  add_audio_pad (self, sinkpad);
+  add_audio_pad (self, pad);
 
-  if (srcpad)
+  if (peerpad)
     {
       GstIterator *iter;
-      add_audio_pad (self, srcpad);
+      add_audio_pad (self, peerpad);
 
-      iter = gst_pad_iterate_internal_links (srcpad);
-
-      while (gst_iterator_foreach (iter, audio_sinkpad_iter, self) ==
+      iter = gst_pad_iterate_internal_links (peerpad);
+      while (gst_iterator_foreach (iter, audio_pad_iter, self) ==
           GST_ITERATOR_RESYNC)
         gst_iterator_resync (iter);
-
       gst_iterator_free (iter);
 
-      gst_object_unref (srcpad);
+      gst_object_unref (peerpad);
     }
 }
 
@@ -732,8 +730,7 @@ audio_pad_linked (GstPad *pad, GstPad *peer, TpStreamEngine *self)
   g_mutex_lock (self->priv->mutex);
   add_audio_pad (self, peer);
 
-
-  while (gst_iterator_foreach (iter, audio_sinkpad_iter, self) ==
+  while (gst_iterator_foreach (iter, audio_pad_iter, self) ==
       GST_ITERATOR_RESYNC)
     gst_iterator_resync (iter);
 
@@ -751,7 +748,7 @@ audio_sink_added_cb (TpStreamEngineAudioStream *audiostream,
 
   iter = gst_element_iterate_sink_pads (sink);
 
-  while (gst_iterator_foreach (iter, audio_sinkpad_iter, self) ==
+  while (gst_iterator_foreach (iter, audio_pad_iter, self) ==
       GST_ITERATOR_RESYNC)
     gst_iterator_resync (iter);
 
-- 
1.5.6.5




More information about the telepathy-commits mailing list