From d5adfff978d4230dc66ec3ef6a5a208b6893eb25 Mon Sep 17 00:00:00 2001 From: jp9000 Date: Wed, 14 Jun 2017 08:20:30 -0700 Subject: [PATCH] deps/media-playback: Fix playback reset fail after stop The recent changes in 88ae9af causes av_read_frame to check for m->stopping, and fail with AVERROR_EXIT if true, which would happen after each reset. Moving mp_media_prepare_frames to a line after m->stopping is reset to false fixes the issue. --- deps/media-playback/media-playback/media.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/deps/media-playback/media-playback/media.c b/deps/media-playback/media-playback/media.c index 167e8e9b3..e6922b012 100644 --- a/deps/media-playback/media-playback/media.c +++ b/deps/media-playback/media-playback/media.c @@ -427,15 +427,15 @@ static bool mp_media_reset(mp_media_t *m) m->eof = false; m->base_ts += next_ts; - if (!mp_media_prepare_frames(m)) - return false; - pthread_mutex_lock(&m->mutex); stopping = m->stopping; active = m->active; m->stopping = false; pthread_mutex_unlock(&m->mutex); + if (!mp_media_prepare_frames(m)) + return false; + if (active) { if (!m->play_sys_ts) m->play_sys_ts = (int64_t)os_gettime_ns(); -- GitLab