From: James Almer Date: Fri, 1 Jul 2016 18:59:41 +0000 (+0200) Subject: avcodec/h264_slice: Only call ff_h264_flush_change() on initialized contexts X-Git-Tag: android-x86-7.1-r1~4517 X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=77eb05a2f11f03c98837fa5350d17a8a1c5a2a3d;p=android-x86%2Fexternal-ffmpeg.git avcodec/h264_slice: Only call ff_h264_flush_change() on initialized contexts Changed by committer to ensure context_initialized is reset Signed-off-by: Michael Niedermayer --- diff --git a/libavcodec/h264_slice.c b/libavcodec/h264_slice.c index 427554c44e..ca492ba6ab 100644 --- a/libavcodec/h264_slice.c +++ b/libavcodec/h264_slice.c @@ -1415,6 +1415,7 @@ static int h264_slice_header_parse(H264Context *h, H264SliceContext *sl) } if (!h->context_initialized || must_reinit || needs_reinit) { + int flush_changes = h->context_initialized; h->context_initialized = 0; if (sl != h->slice_ctx) { av_log(h->avctx, AV_LOG_ERROR, @@ -1428,7 +1429,8 @@ static int h264_slice_header_parse(H264Context *h, H264SliceContext *sl) av_assert1(first_slice); - ff_h264_flush_change(h); + if(flush_changes) + ff_h264_flush_change(h); if ((ret = get_pixel_format(h, 1)) < 0) return ret;