diff --git a/ChangeLog b/ChangeLog index f4d5929bac..243622ef75 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,17 @@ +2004-02-14 Julien MOUTTE + + * 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 * ext/mad/gstid3tag.c: (gst_id3_tag_chain): diff --git a/gst-libs/gst/play/play.c b/gst-libs/gst/play/play.c index 23db9ba9b9..0fac17bf14 100644 --- a/gst-libs/gst/play/play.c +++ b/gst-libs/gst/play/play.c @@ -944,6 +944,9 @@ gst_play_connect_visualization (GstPlay * play, gboolean connect) 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)) diff --git a/gst-libs/gst/riff/riff-read.c b/gst-libs/gst/riff/riff-read.c index 6b0c05f96e..19d6998193 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; }