[FFmpeg-cvslog] avcodec/h264_slice: Clear table pointers to avoid stale pointers
Michael Niedermayer
git at videolan.org
Sun Dec 21 04:50:31 CET 2014
ffmpeg | branch: release/1.1 | Michael Niedermayer <michaelni at gmx.at> | Sun Nov 2 01:55:40 2014 +0100| [3535f0867e413d240d7736294fd340c756c226cd] | committer: Michael Niedermayer
avcodec/h264_slice: Clear table pointers to avoid stale pointers
Might fix Ticket3889
Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
(cherry picked from commit 547fce95858ef83f8c25ae347e3ae3b8ba437fd9)
Conflicts:
libavcodec/h264_slice.c
Conflicts:
libavcodec/h264.c
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=3535f0867e413d240d7736294fd340c756c226cd
---
libavcodec/h264.c | 12 ++++++++++++
1 file changed, 12 insertions(+)
diff --git a/libavcodec/h264.c b/libavcodec/h264.c
index 66ca83f..bf75f3f 100644
--- a/libavcodec/h264.c
+++ b/libavcodec/h264.c
@@ -1249,6 +1249,18 @@ static int decode_update_thread_context(AVCodecContext *dst,
memset(h->sps_buffers, 0, sizeof(h->sps_buffers));
memset(h->pps_buffers, 0, sizeof(h->pps_buffers));
+ h->intra4x4_pred_mode= NULL;
+ h->non_zero_count = NULL;
+ h->slice_table_base = NULL;
+ h->slice_table = NULL;
+ h->cbp_table = NULL;
+ h->chroma_pred_mode_table = NULL;
+ memset(h->mvd_table, 0, sizeof(h->mvd_table));
+ h->direct_table = NULL;
+ h->list_counts = NULL;
+ h->mb2b_xy = NULL;
+ h->mb2br_xy = NULL;
+
if (s1->context_initialized) {
if (ff_h264_alloc_tables(h) < 0) {
av_log(dst, AV_LOG_ERROR, "Could not allocate memory for h264\n");
More information about the ffmpeg-cvslog
mailing list