From d3dfcde0f7e499113ae7cdbb85c9b6306b2d7e24 Mon Sep 17 00:00:00 2001 From: James Berry Date: Mon, 14 Feb 2011 14:02:52 -0500 Subject: [PATCH] mem leak fix for cpi->tplist checks added to make sure that cpi->tplist is freed correctly in vp8_dealloc_compressor_data and vp8_alloc_compressor_data. Change-Id: I66149dbbd25c958800ad94f4379d723191d9680d --- vp8/encoder/onyx_if.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/vp8/encoder/onyx_if.c b/vp8/encoder/onyx_if.c index e73e41ee7..3f787d6da 100644 --- a/vp8/encoder/onyx_if.c +++ b/vp8/encoder/onyx_if.c @@ -262,7 +262,8 @@ static void setup_features(VP8_COMP *cpi) void vp8_dealloc_compressor_data(VP8_COMP *cpi) { - vpx_free(cpi->tplist); + if(cpi->tplist!=0) + vpx_free(cpi->tplist); cpi->tplist = NULL; // Delete last frame MV storage buffers @@ -1406,6 +1407,9 @@ void vp8_alloc_compressor_data(VP8_COMP *cpi) cpi->mt_sync_range = 16; #endif + if(cpi->tplist); + vpx_free(cpi->tplist); + CHECK_MEM_ERROR(cpi->tplist, vpx_malloc(sizeof(TOKENLIST) * cpi->common.mb_rows)); } -- 2.40.0