ref: 74e8446e586380597441094bb9b4d82933fb305d
parent: 8c4552fb36e98785193137c6e092329566338982
author: James Berry <jamesberry@google.com>
date: Thu Dec 23 09:47:56 EST 2010
vpxenc stats_close() memleak fix stats_close() was not freeing memory for single pass runs. It now takes in arg_passes to determine when it should free memory. Change-Id: I6623b7e30b76f9bf2e16008490f9b20484d03f31
--- a/vpxenc.c
+++ b/vpxenc.c
@@ -186,11 +186,11 @@
}
-void stats_close(stats_io_t *stats)
+void stats_close(stats_io_t *stats, int last_pass)
{
if (stats->file)
{
- if (stats->pass == 1)
+ if (stats->pass == last_pass)
{
#if 0
#elif USE_POSIX_MMAP
@@ -205,7 +205,7 @@
}
else
{
- if (stats->pass == 1)
+ if (stats->pass == last_pass)
free(stats->buf.buf);
}
}
@@ -1692,7 +1692,7 @@
}
fclose(outfile);
- stats_close(&stats);
+ stats_close(&stats, arg_passes-1);
fprintf(stderr, "\n");
if (one_pass_only)
--
⑨