From 58c9f1a822bf226472eaa471c487988f9dac5c7f Mon Sep 17 00:00:00 2001 From: wm4 Date: Sat, 4 Feb 2017 22:50:45 +0100 Subject: demux: try not to read packets when cancelled Essentially, this will make it abort sooner. Especially with DASH it might avoid confusing error messages, although exact behavior depends on timing. --- demux/demux.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'demux') diff --git a/demux/demux.c b/demux/demux.c index d21b20910a..0c45083e2d 100644 --- a/demux/demux.c +++ b/demux/demux.c @@ -661,7 +661,9 @@ static bool read_packet(struct demux_internal *in) demux->desc->seek(demux, seek_pts, SEEK_BACKWARD | SEEK_HR); } - bool eof = !demux->desc->fill_buffer || demux->desc->fill_buffer(demux) <= 0; + bool eof = true; + if (demux->desc->fill_buffer && !demux_cancel_test(demux)) + eof = demux->desc->fill_buffer(demux) <= 0; update_cache(in); pthread_mutex_lock(&in->lock); -- cgit v1.2.3