avcodec/h264: Clear last_pic_for_ec on seeks and reinits

Fixes out of array read
Fixes: asan_heap-oob_2ff30d2_3479_cov_3803648058_src13_hrc7_525_420_2.264

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
pull/150/head
Michael Niedermayer 10 years ago
parent 390c57781f
commit 7296716e35
  1. 2
      libavcodec/h264.c

@ -1084,6 +1084,8 @@ void ff_h264_flush_change(H264Context *h)
h->delayed_pic[j++] = h->delayed_pic[i]; h->delayed_pic[j++] = h->delayed_pic[i];
h->delayed_pic[j] = NULL; h->delayed_pic[j] = NULL;
} }
ff_h264_unref_picture(h, &h->last_pic_for_ec);
h->first_field = 0; h->first_field = 0;
ff_h264_reset_sei(h); ff_h264_reset_sei(h);
h->recovery_frame = -1; h->recovery_frame = -1;

Loading…
Cancel
Save