From 0ddc53dabbc6f636d062b187ea27934610aaad30 Mon Sep 17 00:00:00 2001 From: Janne Grunau Date: Wed, 11 Jun 2014 19:40:28 +0200 Subject: mpegvideo: synchronize AVFrame pointers in ERContext fully Since error resilience uses AVFrame pointers instead of references it has to copy NULL pointers too. After a codec flush the last/next frame pointers in MpegEncContext are NULL and the old pointers remaining in ERContext are invalid. Fixes a crash in vlc for android thumbnailer. Reported and debugged by Adrien Maglo . --- libavcodec/mpegvideo.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'libavcodec/mpegvideo.c') diff --git a/libavcodec/mpegvideo.c b/libavcodec/mpegvideo.c index 49bc70c28b..aea6321518 100644 --- a/libavcodec/mpegvideo.c +++ b/libavcodec/mpegvideo.c @@ -2470,8 +2470,11 @@ void ff_mpeg_set_erpic(ERPicture *dst, Picture *src) { int i; - if (!src) + if (!src) { + dst->f = NULL; + dst->tf = NULL; return; + } dst->f = src->f; dst->tf = &src->tf; -- cgit v1.2.3