From e063fa6b3f976f7fcc36e444c46c005589e2a8a7 Mon Sep 17 00:00:00 2001 From: Richard Mudgett <rmudgett@digium.com> Date: Tue, 28 Feb 2012 20:34:11 +0000 Subject: [PATCH] Fix REF_DEBUG compile errors. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@357404 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- apps/app_queue.c | 35 +++++++++++++++++++++++++---------- main/channel.c | 16 ++++++++-------- res/res_musiconhold.c | 9 ++++++--- 3 files changed, 39 insertions(+), 21 deletions(-) diff --git a/apps/app_queue.c b/apps/app_queue.c index 834e090829..f042c06deb 100644 --- a/apps/app_queue.c +++ b/apps/app_queue.c @@ -1291,17 +1291,32 @@ static int queue_cmp_cb(void *obj, void *arg, int flags) } #ifdef REF_DEBUG_ONLY_QUEUES -#define queue_ref(a) __ao2_ref_debug(a,1,"",__FILE__,__LINE__,__PRETTY_FUNCTION__) -#define queue_unref(a) __ao2_ref_debug(a,-1,"",__FILE__,__LINE__,__PRETTY_FUNCTION__) -#define queue_t_ref(a,b) __ao2_ref_debug(a,1,b,__FILE__,__LINE__,__PRETTY_FUNCTION__) -#define queue_t_unref(a,b) __ao2_ref_debug(a,-1,b,__FILE__,__LINE__,__PRETTY_FUNCTION__) -#define queues_t_link(c,q,tag) __ao2_link_debug(c,q,tag,__FILE__,__LINE__,__PRETTY_FUNCTION__) -#define queues_t_unlink(c,q,tag) __ao2_unlink_debug(c,q,tag,__FILE__,__LINE__,__PRETTY_FUNCTION__) +#define queue_ref(q) _queue_ref(q, "", __FILE__, __LINE__, __PRETTY_FUNCTION__) +#define queue_unref(q) _queue_unref(q, "", __FILE__, __LINE__, __PRETTY_FUNCTION__) +#define queue_t_ref(q, tag) _queue_ref(q, tag, __FILE__, __LINE__, __PRETTY_FUNCTION__) +#define queue_t_unref(q, tag) _queue_unref(q, tag, __FILE__, __LINE__, __PRETTY_FUNCTION__) +#define queues_t_link(c, q, tag) __ao2_link_debug(c, q, 0, tag, __FILE__, __LINE__, __PRETTY_FUNCTION__) +#define queues_t_unlink(c, q, tag) __ao2_unlink_debug(c, q, 0, tag, __FILE__, __LINE__, __PRETTY_FUNCTION__) + +static inline struct call_queue *_queue_ref(struct call_queue *q, const char *tag, const char *file, int line, const char *filename) +{ + __ao2_ref_debug(q, 1, tag, file, line, filename); + return q; +} + +static inline struct call_queue *_queue_unref(struct call_queue *q, const char *tag, const char *file, int line, const char *filename) +{ + __ao2_ref_debug(q, -1, tag, file, line, filename); + return NULL; +} + #else -#define queue_t_ref(a,b) queue_ref(a) -#define queue_t_unref(a,b) queue_unref(a) -#define queues_t_link(c,q,tag) ao2_t_link(c,q,tag) -#define queues_t_unlink(c,q,tag) ao2_t_unlink(c,q,tag) + +#define queue_t_ref(q, tag) queue_ref(q) +#define queue_t_unref(q, tag) queue_unref(q) +#define queues_t_link(c, q, tag) ao2_t_link(c, q, tag) +#define queues_t_unlink(c, q, tag) ao2_t_unlink(c, q, tag) + static inline struct call_queue *queue_ref(struct call_queue *q) { ao2_ref(q, 1); diff --git a/main/channel.c b/main/channel.c index ded41da295..c900d0e65c 100644 --- a/main/channel.c +++ b/main/channel.c @@ -931,11 +931,11 @@ __ast_channel_alloc_ap(int needqueue, int state, const char *cid_num, const char } #if defined(REF_DEBUG) - tmp = __ao2_alloc_debug(sizeof(*tmp), ast_channel_destructor, "", file, line, - function, 1); + tmp = __ao2_alloc_debug(sizeof(*tmp), ast_channel_destructor, + AO2_ALLOC_OPT_LOCK_MUTEX, "", file, line, function, 1); #elif defined(__AST_DEBUG_MALLOC) - tmp = __ao2_alloc_debug(sizeof(*tmp), ast_channel_destructor, "", file, line, - function, 0); + tmp = __ao2_alloc_debug(sizeof(*tmp), ast_channel_destructor, + AO2_ALLOC_OPT_LOCK_MUTEX, "", file, line, function, 0); #else tmp = ao2_alloc(sizeof(*tmp), ast_channel_destructor); #endif @@ -1179,11 +1179,11 @@ struct ast_channel *ast_dummy_channel_alloc(void) struct varshead *headp; #if defined(REF_DEBUG) - tmp = __ao2_alloc_debug(sizeof(*tmp), ast_dummy_channel_destructor, "dummy channel", - file, line, function, 1); + tmp = __ao2_alloc_debug(sizeof(*tmp), ast_dummy_channel_destructor, + AO2_ALLOC_OPT_LOCK_MUTEX, "dummy channel", file, line, function, 1); #elif defined(__AST_DEBUG_MALLOC) - tmp = __ao2_alloc_debug(sizeof(*tmp), ast_dummy_channel_destructor, "dummy channel", - file, line, function, 0); + tmp = __ao2_alloc_debug(sizeof(*tmp), ast_dummy_channel_destructor, + AO2_ALLOC_OPT_LOCK_MUTEX, "dummy channel", file, line, function, 0); #else tmp = ao2_alloc(sizeof(*tmp), ast_dummy_channel_destructor); #endif diff --git a/res/res_musiconhold.c b/res/res_musiconhold.c index 6411af2426..37d3478099 100644 --- a/res/res_musiconhold.c +++ b/res/res_musiconhold.c @@ -889,7 +889,8 @@ static struct mohclass *_get_mohbyname(const char *name, int warn, int flags, co ast_copy_string(tmp_class.name, name, sizeof(tmp_class.name)); #ifdef REF_DEBUG - moh = __ao2_find_debug(mohclasses, &tmp_class, flags, "get_mohbyname", (char *) file, lineno, funcname); + moh = __ao2_find_debug(mohclasses, &tmp_class, flags, + "get_mohbyname", file, lineno, funcname); #else moh = __ao2_find(mohclasses, &tmp_class, flags); #endif @@ -1338,9 +1339,11 @@ static struct mohclass *_moh_class_malloc(const char *file, int line, const char if ((class = #ifdef REF_DEBUG - __ao2_alloc_debug(sizeof(*class), moh_class_destructor, "Allocating new moh class", file, line, funcname, 1) + __ao2_alloc_debug(sizeof(*class), moh_class_destructor, + AO2_ALLOC_OPT_LOCK_MUTEX, "Allocating new moh class", file, line, funcname, 1) #elif defined(__AST_DEBUG_MALLOC) - __ao2_alloc_debug(sizeof(*class), moh_class_destructor, "Allocating new moh class", file, line, funcname, 0) + __ao2_alloc_debug(sizeof(*class), moh_class_destructor, + AO2_ALLOC_OPT_LOCK_MUTEX, "Allocating new moh class", file, line, funcname, 0) #else ao2_alloc(sizeof(*class), moh_class_destructor) #endif -- GitLab