mirror of
https://github.com/asterisk/asterisk.git
synced 2025-09-02 19:16:15 +00:00
MALLOC_DEBUG: Fix some misuses of free() when MALLOC_DEBUG is enabled.
* There were several places in ARI where an external library was mallocing memory that must always be released with free(). When MALLOC_DEBUG is enabled, free() is redirected to the MALLOC_DEBUG version. Since the external library call still uses the normal malloc(), MALLOC_DEBUG complains that the freed memory block is not registered and will not free it. These cases must use ast_std_free(). * Changed calls to asprintf() and vasprintf() to the equivalent ast_asprintf() and ast_vasprintf() versions respectively. ........ Merged revisions 400270 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@400271 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -340,10 +340,10 @@ struct ast_json *ast_json_vstringf(const char *format, va_list args)
|
||||
json_t *ret = NULL;
|
||||
|
||||
if (format) {
|
||||
int err = vasprintf(&str, format, args);
|
||||
int err = ast_vasprintf(&str, format, args);
|
||||
if (err > 0) {
|
||||
ret = json_string(str);
|
||||
free(str);
|
||||
ast_free(str);
|
||||
}
|
||||
}
|
||||
return (struct ast_json *)ret;
|
||||
|
Reference in New Issue
Block a user