diff options
author | Walter Doekes <walter+asterisk@wjd.nu> | 2014-09-26 14:41:38 +0000 |
---|---|---|
committer | Walter Doekes <walter+asterisk@wjd.nu> | 2014-09-26 14:41:38 +0000 |
commit | 37179a2b1f0a12e063a2bb300e402ac5e7512569 (patch) | |
tree | 74872dbb405e8ef55370be0afe6bae8947a616da /main/file.c | |
parent | b8c1130ed172e478d7eaccbf9ba2913aaf36b260 (diff) |
core: Don't allow free to mean ast_free (and malloc, etc..).
This gets rid of most old libc free/malloc/realloc and replaces them
with ast_free and friends. When compiling with MALLOC_DEBUG you'll
notice it when you're mistakenly using one of the libc variants. For
the legacy cases you can define WRAP_LIBC_MALLOC before including
asterisk.h.
Even better would be if the errors were also enabled when compiling
without MALLOC_DEBUG, but that's a slightly more invasive header
file change.
Those compiling addons/format_mp3 will need to rerun
./contrib/scripts/get_mp3_source.sh.
ASTERISK-24348 #related
Review: https://reviewboard.asterisk.org/r/4015/
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@423978 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'main/file.c')
-rw-r--r-- | main/file.c | 13 |
1 files changed, 4 insertions, 9 deletions
diff --git a/main/file.c b/main/file.c index 1d3755ac2..4221b0851 100644 --- a/main/file.c +++ b/main/file.c @@ -412,17 +412,12 @@ static void filestream_destructor(void *arg) } } - if (f->filename) - free(f->filename); - if (f->realfilename) - free(f->realfilename); + ast_free(f->filename); + ast_free(f->realfilename); if (f->vfs) ast_closestream(f->vfs); - if (f->write_buffer) { - ast_free(f->write_buffer); - } - if (f->orig_chan_name) - free((void *) f->orig_chan_name); + ast_free(f->write_buffer); + ast_free((void *)f->orig_chan_name); ao2_cleanup(f->lastwriteformat); ao2_cleanup(f->fr.subclass.format); ast_module_unref(f->fmt->module); |