mirror of
https://github.com/asterisk/asterisk.git
synced 2025-10-06 13:07:21 +00:00
stasis: use ao2_t_alloc for certain object allocators
Add tags to stasis objects using the name. This makes it easier to track the source of certain stasis ref leaks. Review: https://reviewboard.asterisk.org/r/3821/ git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/12@418996 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -204,7 +204,7 @@ struct stasis_topic *stasis_topic_create(const char *name)
|
|||||||
struct stasis_topic *topic;
|
struct stasis_topic *topic;
|
||||||
int res = 0;
|
int res = 0;
|
||||||
|
|
||||||
topic = ao2_alloc(sizeof(*topic), topic_dtor);
|
topic = ao2_t_alloc(sizeof(*topic), topic_dtor, name);
|
||||||
if (!topic) {
|
if (!topic) {
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
@@ -311,7 +311,7 @@ struct stasis_subscription *internal_stasis_subscribe(
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* The ao2 lock is used for join_cond. */
|
/* The ao2 lock is used for join_cond. */
|
||||||
sub = ao2_alloc(sizeof(*sub), subscription_dtor);
|
sub = ao2_t_alloc(sizeof(*sub), subscription_dtor, topic->name);
|
||||||
if (!sub) {
|
if (!sub) {
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
@@ -70,7 +70,7 @@ struct stasis_cp_all *stasis_cp_all_create(const char *name,
|
|||||||
RAII_VAR(char *, cached_name, NULL, ast_free);
|
RAII_VAR(char *, cached_name, NULL, ast_free);
|
||||||
RAII_VAR(struct stasis_cp_all *, all, NULL, ao2_cleanup);
|
RAII_VAR(struct stasis_cp_all *, all, NULL, ao2_cleanup);
|
||||||
|
|
||||||
all = ao2_alloc(sizeof(*all), all_dtor);
|
all = ao2_t_alloc(sizeof(*all), all_dtor, name);
|
||||||
if (!all) {
|
if (!all) {
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
@@ -138,7 +138,7 @@ struct stasis_cp_single *stasis_cp_single_create(struct stasis_cp_all *all,
|
|||||||
{
|
{
|
||||||
RAII_VAR(struct stasis_cp_single *, one, NULL, ao2_cleanup);
|
RAII_VAR(struct stasis_cp_single *, one, NULL, ao2_cleanup);
|
||||||
|
|
||||||
one = ao2_alloc(sizeof(*one), one_dtor);
|
one = ao2_t_alloc(sizeof(*one), one_dtor, name);
|
||||||
if (!one) {
|
if (!one) {
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
@@ -55,7 +55,7 @@ struct stasis_message_type *stasis_message_type_create(const char *name,
|
|||||||
{
|
{
|
||||||
struct stasis_message_type *type;
|
struct stasis_message_type *type;
|
||||||
|
|
||||||
type = ao2_alloc(sizeof(*type), message_type_dtor);
|
type = ao2_t_alloc(sizeof(*type), message_type_dtor, name);
|
||||||
if (!type) {
|
if (!type) {
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
@@ -108,7 +108,7 @@ struct stasis_message *stasis_message_create_full(struct stasis_message_type *ty
|
|||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
message = ao2_alloc(sizeof(*message), stasis_message_dtor);
|
message = ao2_t_alloc(sizeof(*message), stasis_message_dtor, type->name);
|
||||||
if (message == NULL) {
|
if (message == NULL) {
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
@@ -212,7 +212,7 @@ struct stasis_message_router *stasis_message_router_create(
|
|||||||
int res;
|
int res;
|
||||||
RAII_VAR(struct stasis_message_router *, router, NULL, ao2_cleanup);
|
RAII_VAR(struct stasis_message_router *, router, NULL, ao2_cleanup);
|
||||||
|
|
||||||
router = ao2_alloc(sizeof(*router), router_dtor);
|
router = ao2_t_alloc(sizeof(*router), router_dtor, topic->name);
|
||||||
if (!router) {
|
if (!router) {
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user