diff --git a/ChangeLog b/ChangeLog index 6006bb659d..e037eac7be 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2008-05-10 Edward Hervey + + * ext/mad/gstmad.c: (gst_mad_sink_event): + * gst/mpegaudioparse/gstmpegaudioparse.c: + (gst_mp3parse_sink_event): + Always let FLUSH_START events flow downstream. + 2008-05-07 Tim-Philipp Müller * configure.ac: diff --git a/common b/common index 9b28214399..dbf8f3aece 160000 --- a/common +++ b/common @@ -1 +1 @@ -Subproject commit 9b28214399156457fd6b43d0604a47e4bdf19c28 +Subproject commit dbf8f3aeceb6e57de097951a670cd853b4886ad8 diff --git a/ext/mad/gstmad.c b/ext/mad/gstmad.c index a49ff1ddbf..32126c0bba 100644 --- a/ext/mad/gstmad.c +++ b/ext/mad/gstmad.c @@ -988,6 +988,7 @@ gst_mad_sink_event (GstPad * pad, GstEvent * event) mad->tempsize = 0; mad_frame_mute (&mad->frame); mad_synth_mute (&mad->synth); + case GST_EVENT_FLUSH_START: result = gst_pad_event_default (pad, event); break; diff --git a/gst/mpegaudioparse/gstmpegaudioparse.c b/gst/mpegaudioparse/gstmpegaudioparse.c index 56dc567f5d..79c3a2ec98 100644 --- a/gst/mpegaudioparse/gstmpegaudioparse.c +++ b/gst/mpegaudioparse/gstmpegaudioparse.c @@ -558,7 +558,9 @@ gst_mp3parse_sink_event (GstPad * pad, GstEvent * event) res = gst_pad_push_event (mp3parse->srcpad, event); break; default: - if (mp3parse->pending_segment && GST_EVENT_TYPE (event) != GST_EVENT_EOS) { + if (mp3parse->pending_segment && + (GST_EVENT_TYPE (event) != GST_EVENT_EOS) && + (GST_EVENT_TYPE (event) != GST_EVENT_FLUSH_START)) { /* Cache all events except EOS and the ones above if we have * a pending segment */ mp3parse->pending_events =