From 01df2a13c32a28cd5a5b27098aa2b4b32a3d76e4 Mon Sep 17 00:00:00 2001 From: Michael Niedermayer Date: Sun, 24 Mar 2013 02:31:20 +0100 Subject: [PATCH] avcodec/utils: initialize pixel buffer pool This should silence many valgrind warnings about use of uninitialized data, all the warnings i looked at where false positives having their uninitialized data not actually used. The same effect could be achieved by listing all code that touches the pixel buffer in the valgrind suppression file. Note, valgrind also fails to trace the origins correctly. Signed-off-by: Michael Niedermayer --- libavcodec/utils.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libavcodec/utils.c b/libavcodec/utils.c index 70c6129f75..d1b977e0e4 100644 --- a/libavcodec/utils.c +++ b/libavcodec/utils.c @@ -408,7 +408,10 @@ static int update_frame_pool(AVCodecContext *avctx, AVFrame *frame) av_buffer_pool_uninit(&pool->pools[i]); pool->linesize[i] = picture.linesize[i]; if (size[i]) { - pool->pools[i] = av_buffer_pool_init(size[i] + 16, NULL); + pool->pools[i] = av_buffer_pool_init(size[i] + 16, + CONFIG_MEMORY_POISONING ? + NULL : + av_buffer_allocz); if (!pool->pools[i]) { ret = AVERROR(ENOMEM); goto fail;