From: James Berry Date: Mon, 14 Feb 2011 19:02:52 +0000 (-0500) Subject: mem leak fix for cpi->tplist X-Git-Tag: v0.9.6~38^2 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=d3dfcde0f7e499113ae7cdbb85c9b6306b2d7e24;p=libvpx 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 --- 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)); }