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
This commit is contained in:
James Berry 2010-12-23 14:47:56 -05:00
parent 8c4552fb36
commit 74e8446e58

View File

@ -186,11 +186,11 @@ int stats_open_mem(stats_io_t *stats, int pass)
}
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 @@ void stats_close(stats_io_t *stats)
}
else
{
if (stats->pass == 1)
if (stats->pass == last_pass)
free(stats->buf.buf);
}
}
@ -1692,7 +1692,7 @@ int main(int argc, const char **argv_)
}
fclose(outfile);
stats_close(&stats);
stats_close(&stats, arg_passes-1);
fprintf(stderr, "\n");
if (one_pass_only)