[FFmpeg-cvslog] dxa: Make sure the reference frame exists
Luca Barbato
git at videolan.org
Thu Sep 26 00:16:35 CEST 2013
ffmpeg | branch: release/0.10 | Luca Barbato <lu_zero at gentoo.org> | Wed Aug 14 16:51:53 2013 +0200| [86c169c5b691ac8434056936a7690fc4c64b4b1a] | committer: Sean McGovern
dxa: Make sure the reference frame exists
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable at libav.org
(cherry picked from commit 5ef7c84a9374681c64722a96d91741f3b990af2b)
Signed-off-by: Luca Barbato <lu_zero at gentoo.org>
Conflicts:
libavcodec/dxa.c
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=86c169c5b691ac8434056936a7690fc4c64b4b1a
---
libavcodec/dxa.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/libavcodec/dxa.c b/libavcodec/dxa.c
index 97b912a..632b1a4 100644
--- a/libavcodec/dxa.c
+++ b/libavcodec/dxa.c
@@ -255,6 +255,12 @@ static int decode_frame(AVCodecContext *avctx, void *data, int *data_size, AVPac
case 5:
c->pic.key_frame = !(compr & 1);
c->pic.pict_type = (compr & 1) ? AV_PICTURE_TYPE_P : AV_PICTURE_TYPE_I;
+
+ if (!tmpptr && !c->pic.key_frame) {
+ av_log(avctx, AV_LOG_ERROR, "Missing reference frame.\n");
+ return AVERROR_INVALIDDATA;
+ }
+
for(j = 0; j < avctx->height; j++){
if(compr & 1){
for(i = 0; i < avctx->width; i++)
More information about the ffmpeg-cvslog
mailing list