From 4d49d36fdabb948c08a5a3f5ca7abccf6343d74b Mon Sep 17 00:00:00 2001
From: Julien Moutte <julien@moutte.net>
Date: Sat, 14 Feb 2004 18:37:48 +0000
Subject: gst-libs/gst/play/play.c: Disable visualization until i find a way to
 fix switch correctly.

Original commit message from CVS:
2004-02-14  Julien MOUTTE  <julien@moutte.net>

* gst-libs/gst/play/play.c: (gst_play_connect_visualization): Disable
visualization until i find a way to fix switch correctly.
* gst-libs/gst/riff/riff-read.c: (gst_riff_peek_head): Fix a bug when
EOS arrives.
* gst/switch/gstswitch.c: (gst_switch_release_pad),
(gst_switch_request_new_pad), (gst_switch_poll_sinkpads),
(gst_switch_loop), (gst_switch_dispose), (gst_switch_class_init):
Reworked switch to get a more correct behaviour with events and refing
of data stored in sinkpads.
* gst/switch/gstswitch.h: Adding an eos flag for every sinkpad so that
we don't pull from a pad in EOS.
---
 gst-libs/gst/riff/riff-read.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

(limited to 'gst-libs/gst/riff')

diff --git a/gst-libs/gst/riff/riff-read.c b/gst-libs/gst/riff/riff-read.c
index 6b0c05f9..19d69981 100644
--- a/gst-libs/gst/riff/riff-read.c
+++ b/gst-libs/gst/riff/riff-read.c
@@ -164,10 +164,11 @@ gst_riff_peek_head (GstRiffRead *riff,
 
     /* Here, we might encounter EOS */
     gst_bytestream_get_status (riff->bs, &remaining, &event);
-    if (event) {
+    if (GST_IS_EVENT (event)) {
       gst_pad_event_default (riff->sinkpad, event);
+      if (GST_EVENT_TYPE (event) == GST_EVENT_EOS)
+        return FALSE;
     } else {
-      gst_event_unref (event);
       GST_ELEMENT_ERROR (riff, RESOURCE, READ, (NULL), (NULL));
       return FALSE;
     }
-- 
cgit v1.2.1