diff options
author | Matthew Jordan <mjordan@digium.com> | 2012-07-19 22:08:20 +0000 |
---|---|---|
committer | Matthew Jordan <mjordan@digium.com> | 2012-07-19 22:08:20 +0000 |
commit | f80278792480fe432a32608773f172576dc84839 (patch) | |
tree | d997172c9eb4229ac0d66e5ac7cc31c21b09f60e /main/cel.c | |
parent | 245f6538e733a46f754a01619bd08eb36a4b1b2b (diff) |
Fix compilation error when MALLOC_DEBUG is enabled
To fix a memory leak in CEL, a channel datastore was introduced whose
destruction function pointer was pointed to the ast_free macro. Without
MALLOC_DEBUG enabled this compiles as fine, as ast_free is defined as free.
With MALLOC_DEBUG enabled, however, ast_free takes on a definition from a
different place then utils.h, and became undefined. This patch resolves this
by using a reference to ast_free_ptr. When MALLOC_DEBUG is enabled, this
calls ast_free; when MALLOC_DEBUG is not enabled, this is defined to be
ast_free, which is defined to be free.
(issue AST-916)
Reported by: Thomas Arimont
........
Merged revisions 370273 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 370274 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@370276 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'main/cel.c')
-rw-r--r-- | main/cel.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/main/cel.c b/main/cel.c index 8a708cc3b..785b791f1 100644 --- a/main/cel.c +++ b/main/cel.c @@ -395,7 +395,7 @@ void ast_cel_check_retire_linkedid(struct ast_channel *chan) */ static const struct ast_datastore_info fabricated_channel_datastore = { .type = "CEL fabricated channel", - .destroy = ast_free, + .destroy = ast_free_ptr, }; struct ast_channel *ast_cel_fabricate_channel_from_event(const struct ast_event *event) |