From fd59ea8c7d3d98a7302a12c390c501936e8a0ab4 Mon Sep 17 00:00:00 2001 From: Edward Hervey Date: Fri, 11 May 2018 09:21:09 +0200 Subject: [PATCH] asfdemux: Only send flush event on seeking flushes And not on all the time --- gst/asfdemux/gstasfdemux.c | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/gst/asfdemux/gstasfdemux.c b/gst/asfdemux/gstasfdemux.c index 80c4fa757f..795c82fa4a 100644 --- a/gst/asfdemux/gstasfdemux.c +++ b/gst/asfdemux/gstasfdemux.c @@ -732,15 +732,13 @@ gst_asf_demux_handle_seek_event (GstASFDemux * demux, GstEvent * event) * forever */ GST_PAD_STREAM_LOCK (demux->sinkpad); - /* we now can stop flushing, since we have the stream lock now */ - fevent = gst_event_new_flush_stop (TRUE); - gst_event_set_seqnum (fevent, seqnum); - gst_pad_push_event (demux->sinkpad, gst_event_ref (fevent)); - - if (G_LIKELY (flush)) + if (G_LIKELY (flush)) { + /* we now can stop flushing, since we have the stream lock now */ + fevent = gst_event_new_flush_stop (TRUE); + gst_event_set_seqnum (fevent, seqnum); + gst_pad_push_event (demux->sinkpad, gst_event_ref (fevent)); gst_asf_demux_send_event_unlocked (demux, fevent); - else - gst_event_unref (fevent); + } /* operating on copy of segment until we know the seek worked */ segment = demux->segment;