diff options
author | Richard Mudgett <rmudgett@digium.com> | 2016-08-01 11:04:33 -0500 |
---|---|---|
committer | Richard Mudgett <rmudgett@digium.com> | 2016-08-15 13:02:48 -0500 |
commit | 29beb2890c56efa3a1a10c811081c191bc41961b (patch) | |
tree | 18aaf33c5c56d2cf534ffb7d90b9412f81a23d0b /main | |
parent | 2dc23297a9cf1bb04b7793565cf50dd670ca2637 (diff) |
sorcery.c: Tweak some container declaration formatting.
* Tweak sorcery_object_type_alloc() formatting.
* Tweak ast_sorcery_init() formatting.
Change-Id: Ib02430023f15268cd7a2ea53f2c331213e4d3944
Diffstat (limited to 'main')
-rw-r--r-- | main/sorcery.c | 31 |
1 files changed, 20 insertions, 11 deletions
diff --git a/main/sorcery.c b/main/sorcery.c index bfc768879..737474eea 100644 --- a/main/sorcery.c +++ b/main/sorcery.c @@ -505,13 +505,15 @@ int ast_sorcery_init(void) }; ast_assert(wizards == NULL); - if (!(threadpool = ast_threadpool_create("Sorcery", NULL, &options))) { - threadpool = NULL; + threadpool = ast_threadpool_create("Sorcery", NULL, &options); + if (!threadpool) { return -1; } - if (!(wizards = ao2_container_alloc(WIZARD_BUCKETS, sorcery_wizard_hash, sorcery_wizard_cmp))) { - ast_threadpool_shutdown(threadpool); + wizards = ao2_container_alloc_hash(AO2_ALLOC_OPT_LOCK_MUTEX, 0, WIZARD_BUCKETS, + sorcery_wizard_hash, NULL, sorcery_wizard_cmp); + if (!wizards) { + sorcery_cleanup(); return -1; } @@ -521,8 +523,8 @@ int ast_sorcery_init(void) return -1; } - instances = ao2_container_alloc_options(AO2_ALLOC_OPT_LOCK_RWLOCK, INSTANCE_BUCKETS, - sorcery_instance_hash, sorcery_instance_cmp); + instances = ao2_container_alloc_hash(AO2_ALLOC_OPT_LOCK_RWLOCK, 0, INSTANCE_BUCKETS, + sorcery_instance_hash, NULL, sorcery_instance_cmp); if (!instances) { sorcery_cleanup(); return -1; @@ -839,23 +841,30 @@ static struct ast_sorcery_object_type *sorcery_object_type_alloc(const char *typ return NULL; } - if (!(object_type->fields = ao2_container_alloc_options(AO2_ALLOC_OPT_LOCK_NOLOCK, OBJECT_FIELD_BUCKETS, - object_type_field_hash, object_type_field_cmp))) { + object_type->fields = ao2_container_alloc_hash(AO2_ALLOC_OPT_LOCK_NOLOCK, 0, + OBJECT_FIELD_BUCKETS, object_type_field_hash, NULL, object_type_field_cmp); + if (!object_type->fields) { ao2_ref(object_type, -1); return NULL; } - if (!(object_type->observers = ao2_container_alloc_options(AO2_ALLOC_OPT_LOCK_RWLOCK, 1, NULL, NULL))) { + object_type->observers = ao2_container_alloc_list(AO2_ALLOC_OPT_LOCK_RWLOCK, 0, + NULL, NULL); + if (!object_type->observers) { ao2_ref(object_type, -1); return NULL; } - if (!(object_type->info = ast_calloc(1, sizeof(*object_type->info) + 2 * sizeof(object_type->info->files[0])))) { + object_type->info = ast_calloc(1, + sizeof(*object_type->info) + 2 * sizeof(object_type->info->files[0])); + if (!object_type->info) { ao2_ref(object_type, -1); return NULL; } - if (!(object_type->file = ast_calloc(1, sizeof(*object_type->file) + 2 * sizeof(object_type->file->types[0])))) { + object_type->file = ast_calloc(1, + sizeof(*object_type->file) + 2 * sizeof(object_type->file->types[0])); + if (!object_type->file) { ao2_ref(object_type, -1); return NULL; } |