diff options
author | Luca Barbato <lu_zero@gentoo.org> | 2013-07-14 18:16:56 +0200 |
---|---|---|
committer | Luca Barbato <lu_zero@gentoo.org> | 2013-08-24 12:11:57 +0200 |
commit | 505415b98599777f8951d3d86821f542e661e581 (patch) | |
tree | baa5fefe4aa6a374e521c5bdd4032144a832b326 /libavcodec/ivi_common.c | |
parent | d55f7a174d49c0b2e87254c075013a7008ddf798 (diff) | |
download | ffmpeg-505415b98599777f8951d3d86821f542e661e581.tar.gz |
indeo: Reject impossible FRAMETYPE_NULL
A frame marked FRAMETYPE_NULL cannot be scalable and requires a
previous frame successfully decoded.
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
(cherry picked from commit 5b2a29552ca09edd4646b6aa1828b32912b7ab36)
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Diffstat (limited to 'libavcodec/ivi_common.c')
-rw-r--r-- | libavcodec/ivi_common.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/libavcodec/ivi_common.c b/libavcodec/ivi_common.c index 36293a12cb..2a737547a5 100644 --- a/libavcodec/ivi_common.c +++ b/libavcodec/ivi_common.c @@ -953,6 +953,14 @@ int ff_ivi_decode_frame(AVCodecContext *avctx, void *data, int *got_frame, } } } + } else { + if (ctx->is_scalable) + return AVERROR_INVALIDDATA; + + for (p = 0; p < 3; p++) { + if (!ctx->planes[p].bands[0].buf) + return AVERROR_INVALIDDATA; + } } //STOP_TIMER("decode_planes"); } |