Merge commit '23a211cbba0b7c9ee694040031b2e5da1be54a00'
[ffmpeg.git] / libavcodec / tta.c
index 6ba3235..b917881 100644 (file)
@@ -251,7 +251,8 @@ static int tta_decode_frame(AVCodecContext *avctx, void *data,
     int32_t *p;
 
     if (avctx->err_recognition & AV_EF_CRCCHECK) {
     int32_t *p;
 
     if (avctx->err_recognition & AV_EF_CRCCHECK) {
-        if (buf_size < 4 || tta_check_crc(s, buf, buf_size - 4))
+        if (buf_size < 4 ||
+            (tta_check_crc(s, buf, buf_size - 4) && avctx->err_recognition & AV_EF_EXPLODE))
             return AVERROR_INVALIDDATA;
     }
 
             return AVERROR_INVALIDDATA;
     }