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 /addons/ooh323c/src/errmgmt.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 'addons/ooh323c/src/errmgmt.c')
-rw-r--r-- | addons/ooh323c/src/errmgmt.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/addons/ooh323c/src/errmgmt.c b/addons/ooh323c/src/errmgmt.c index de660c5fd..6aef0f480 100644 --- a/addons/ooh323c/src/errmgmt.c +++ b/addons/ooh323c/src/errmgmt.c @@ -18,6 +18,7 @@ #include "asterisk.h" #include "asterisk/lock.h" +#include "asterisk/utils.h" #include <stdlib.h> #include "ooasn1.h" @@ -89,7 +90,7 @@ int errAddStrParm (ASN1ErrInfo* pErrInfo, const char* errprm_p) #if defined(_NO_THREADS) || !defined(_NO_MALLOC) if (pErrInfo->parmcnt < ASN_K_MAXERRP) { /* char* tmpstr = (char*) ASN1CRTMALLOC0 (strlen(errprm_p)+1); */ - char* tmpstr = (char*) malloc (strlen(errprm_p)+1); + char* tmpstr = ast_malloc(strlen(errprm_p) + 1); strcpy (tmpstr, errprm_p); pErrInfo->parms[pErrInfo->parmcnt] = tmpstr; pErrInfo->parmcnt++; @@ -118,7 +119,7 @@ void errFreeParms (ASN1ErrInfo* pErrInfo) for (i = 0; i < pErrInfo->parmcnt; i++) /* ASN1CRTFREE0 ((char*)pErrInfo->parms[i]); */ - free ((char*)pErrInfo->parms[i]); + ast_free((char*)pErrInfo->parms[i]); #endif pErrInfo->parmcnt = 0; |