ffv1dec: detect errors in bytestream end mismatches for EC

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
Michael Niedermayer 2012-07-16 15:41:40 +02:00
parent b0d674ec10
commit ac9389a663
1 changed files with 7 additions and 0 deletions

View File

@ -1648,6 +1648,13 @@ static int decode_slice(AVCodecContext *c, void *arg){
}else{
decode_rgb_frame(fs, (uint32_t*)p->data[0] + ps*x + y*(p->linesize[0]/4), width, height, p->linesize[0]/4);
}
if(fs->ac && f->version > 2) {
int v = fs->c.bytestream_end - fs->c.bytestream - 3 - 5*f->ec;
if(v != -1 && v!= 0) {
av_log(f->avctx, AV_LOG_ERROR, "bytestream end mismatching by %d\n", v);
fs->slice_damaged = 1;
}
}
emms_c();