mirror of
https://github.com/asterisk/asterisk.git
synced 2025-10-06 13:07:21 +00:00
Properly account for memory allocated for channels and datastores
As in previous commits, when channels are allocated (with ast_channel_alloc) or datastores are allocated (with ast_datastore_alloc) properly account for the memory being owned by the caller, instead of the allocator function itself. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@192318 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -854,7 +854,7 @@ enum channelreloadreason {
|
||||
* \deprecated You should use the ast_datastore_alloc() generic function instead.
|
||||
* \version 1.6.1 deprecated
|
||||
*/
|
||||
struct ast_datastore *ast_channel_datastore_alloc(const struct ast_datastore_info *info, const char *uid)
|
||||
struct ast_datastore * attribute_malloc ast_channel_datastore_alloc(const struct ast_datastore_info *info, const char *uid)
|
||||
__attribute__((deprecated));
|
||||
|
||||
/*!
|
||||
@@ -913,7 +913,16 @@ int ast_setstate(struct ast_channel *chan, enum ast_channel_state);
|
||||
* \note By default, new channels are set to the "s" extension
|
||||
* and "default" context.
|
||||
*/
|
||||
struct ast_channel *ast_channel_alloc(int needqueue, int state, const char *cid_num, const char *cid_name, const char *acctcode, const char *exten, const char *context, const int amaflag, const char *name_fmt, ...) __attribute__((format(printf, 9, 10)));
|
||||
struct ast_channel * attribute_malloc __attribute__((format(printf, 12, 13)))
|
||||
__ast_channel_alloc(int needqueue, int state, const char *cid_num,
|
||||
const char *cid_name, const char *acctcode,
|
||||
const char *exten, const char *context,
|
||||
const int amaflag, const char *file, int line,
|
||||
const char *function, const char *name_fmt, ...);
|
||||
|
||||
#define ast_channel_alloc(needqueue, state, cid_num, cid_name, acctcode, exten, context, amaflag, ...) \
|
||||
__ast_channel_alloc(needqueue, state, cid_num, cid_name, acctcode, exten, context, amaflag, \
|
||||
__FILE__, __LINE__, __FUNCTION__, __VA_ARGS__)
|
||||
|
||||
/*!
|
||||
* \brief Queue an outgoing frame
|
||||
|
Reference in New Issue
Block a user