avcodec/h264: fix code that blindly dereferences NULL DPB

Fixes mixed flushing and decoding NULL packets
Found-by: wm4

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
Michael Niedermayer 2013-12-10 23:41:50 +01:00
parent e23b18321f
commit d9339ab553
1 changed files with 1 additions and 1 deletions

View File

@ -1851,7 +1851,7 @@ static int decode_update_thread_context(AVCodecContext *dst,
for (i = 0; h->DPB && i < MAX_PICTURE_COUNT; i++) { for (i = 0; h->DPB && i < MAX_PICTURE_COUNT; i++) {
unref_picture(h, &h->DPB[i]); unref_picture(h, &h->DPB[i]);
if (h1->DPB[i].f.buf[0] && if (h1->DPB && h1->DPB[i].f.buf[0] &&
(ret = ref_picture(h, &h->DPB[i], &h1->DPB[i])) < 0) (ret = ref_picture(h, &h->DPB[i], &h1->DPB[i])) < 0)
return ret; return ret;
} }