+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.
+
2004-02-14 Benjamin Otte <in7y118@public.uni-hamburg.de>
* ext/mad/gstid3tag.c: (gst_id3_tag_chain):
g_return_val_if_fail (play != NULL, FALSE);
g_return_val_if_fail (GST_IS_PLAY (play), FALSE);
+ /* Until i fix the switch */
+ return TRUE;
+
/* Getting needed objects */
video_thread = g_hash_table_lookup (play->priv->elements, "video_thread");
if (!GST_IS_ELEMENT (video_thread))
/* 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;
}