summaryrefslogtreecommitdiff
path: root/libavcodec/alac.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2012-12-23 13:28:01 +0100
committerMichael Niedermayer <michaelni@gmx.at>2012-12-23 13:32:40 +0100
commit2f9903f66220b3f175c66e8543ff6066beaa7c66 (patch)
tree42a1d65cab9389b34b1f0bdeea3d76198a9552b4 /libavcodec/alac.c
parentf9d8658d67cfb478e5e36ce1d2795eabdb201bcb (diff)
parent418693bdc5edad72b0d055f741931612d797eb05 (diff)
Merge commit '418693bdc5edad72b0d055f741931612d797eb05'
* commit '418693bdc5edad72b0d055f741931612d797eb05': lavc: rewrite and extend AVFrame doxy opt: avoid segfault in av_opt_next() if the class does not have an option list ttadec: fix last frame handling when seeking alacdec: do not be too strict about the extradata size Conflicts: libavcodec/alac.c libavcodec/avcodec.h libavcodec/tta.c libavutil/opt.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavcodec/alac.c')
-rw-r--r--libavcodec/alac.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/libavcodec/alac.c b/libavcodec/alac.c
index 4e8903114d..180ef53105 100644
--- a/libavcodec/alac.c
+++ b/libavcodec/alac.c
@@ -573,10 +573,9 @@ static av_cold int alac_decode_init(AVCodecContext * avctx)
alac->avctx = avctx;
/* initialize from the extradata */
- if (alac->avctx->extradata_size != ALAC_EXTRADATA_SIZE) {
- av_log(avctx, AV_LOG_ERROR, "expected %d extradata bytes\n",
- ALAC_EXTRADATA_SIZE);
- return -1;
+ if (alac->avctx->extradata_size < ALAC_EXTRADATA_SIZE) {
+ av_log(avctx, AV_LOG_ERROR, "extradata is too small\n");
+ return AVERROR_INVALIDDATA;
}
if (alac_set_info(alac)) {
av_log(avctx, AV_LOG_ERROR, "set_info failed\n");