diff options
author | Jeff Peeler <jpeeler@digium.com> | 2009-03-11 04:06:44 +0000 |
---|---|---|
committer | Jeff Peeler <jpeeler@digium.com> | 2009-03-11 04:06:44 +0000 |
commit | 58cf8b69dac28616b3ba7a28c3c616eaf3021d0b (patch) | |
tree | 452601c0955a6155adba6e987f37ff7628ec58ff /channels | |
parent | be0c75d54ab1eab974286cfa46b4c5abfd9095fc (diff) |
Fix malloc debug macros to work properly with h323.
The main problem here was that cstdlib was undefining free thereby causing the
proper debug macros to not be used. ast_h323.cxx has been changed to call
ast_free instead to avoid the issue.
A few other issues were addressed:
- There were a few instances of functions improperly passing ast_free instead
of ast_free_ptr.
- Some clean up was done to avoid the debug macros intentionally being redefined.
(copied below from Kevin's commit, appreciate the help)
- disable astmm.h from doing anything when STANDALONE is defined, which is used
by the tools in the utils/ directory that use parts of Asterisk header files in
hackish ways; also ensure that utils/extconf.c and utils/conf2ael.c are
compiled with STANDALONE defined.
(closes issue #13593)
Reported by: pj
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@181135 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'channels')
-rw-r--r-- | channels/chan_sip.c | 2 | ||||
-rw-r--r-- | channels/h323/ast_h323.cxx | 8 |
2 files changed, 5 insertions, 5 deletions
diff --git a/channels/chan_sip.c b/channels/chan_sip.c index 77bd396ae..c9d272da8 100644 --- a/channels/chan_sip.c +++ b/channels/chan_sip.c @@ -4200,7 +4200,7 @@ static void register_peer_exten(struct sip_peer *peer, int onoff) if (onoff) { if (!ast_exists_extension(NULL, context, ext, 1, NULL)) { ast_add_extension(context, 1, ext, 1, NULL, NULL, "Noop", - ast_strdup(peer->name), ast_free, "SIP"); + ast_strdup(peer->name), ast_free_ptr, "SIP"); } } else if (pbx_find_extension(NULL, NULL, &q, context, ext, 1, NULL, "", E_MATCH)) { ast_context_remove_extension(context, ext, 1, NULL); diff --git a/channels/h323/ast_h323.cxx b/channels/h323/ast_h323.cxx index 425961435..0c31569f3 100644 --- a/channels/h323/ast_h323.cxx +++ b/channels/h323/ast_h323.cxx @@ -140,7 +140,7 @@ int PAsteriskLog::Buffer::underflow() int PAsteriskLog::Buffer::sync() { - char *str = strdup(string); + char *str = ast_strdup(string); char *s, *s1; char c; @@ -156,7 +156,7 @@ int PAsteriskLog::Buffer::sync() ast_verbose("%s", s); *s1 = c; } - free(str); + ast_free(str); string = PString(); char *base = string.GetPointer(2000); @@ -2141,7 +2141,7 @@ MyH323_ExternalRTPChannel::MyH323_ExternalRTPChannel(MyH323Connection & connecti /* tell the H.323 stack */ SetExternalAddress(H323TransportAddress(localIpAddr, localPort), H323TransportAddress(localIpAddr, localPort + 1)); /* clean up allocated memory */ - free(info); + ast_free(info); } /* Get the payload code */ @@ -2388,7 +2388,7 @@ int h323_set_alias(struct oh323_alias *alias) endPoint->SetGateway(); } if (prefix) - free(prefix); + ast_free(prefix); } return 0; } |