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
This commit is contained in:
Walter Doekes
2014-09-26 14:41:38 +00:00
parent b8c1130ed1
commit 37179a2b1f
44 changed files with 375 additions and 341 deletions

View File

@@ -240,21 +240,21 @@ retry:
done:
ast_mutex_unlock(&tds_lock);
free(accountcode_ai);
free(clidnum_ai);
free(clid_ai);
free(cidani_ai);
free(cidrdnis_ai);
free(ciddnid_ai);
free(exten_ai);
free(context_ai);
free(channel_ai);
free(app_ai);
free(appdata_ai);
free(uniqueid_ai);
free(linkedid_ai);
free(userfield_ai);
free(peer_ai);
ast_free(accountcode_ai);
ast_free(clidnum_ai);
ast_free(clid_ai);
ast_free(cidani_ai);
ast_free(cidrdnis_ai);
ast_free(ciddnid_ai);
ast_free(exten_ai);
ast_free(context_ai);
ast_free(channel_ai);
ast_free(app_ai);
ast_free(appdata_ai);
ast_free(uniqueid_ai);
ast_free(linkedid_ai);
ast_free(userfield_ai);
ast_free(peer_ai);
return;
}
@@ -317,11 +317,11 @@ static int execute_and_consume(DBPROCESS *dbproc, const char *fmt, ...)
va_end(ap);
if (dbfcmd(dbproc, buffer) == FAIL) {
free(buffer);
ast_free(buffer);
return 1;
}
free(buffer);
ast_free(buffer);
if (dbsqlexec(dbproc) == FAIL) {
return 1;