diff options
-rw-r--r-- | main/sorcery.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/main/sorcery.c b/main/sorcery.c index 732fb62ae..f84855eff 100644 --- a/main/sorcery.c +++ b/main/sorcery.c @@ -1822,7 +1822,12 @@ void *ast_sorcery_retrieve_by_id(const struct ast_sorcery *sorcery, const char * } if (!cached && object) { - AST_VECTOR_CALLBACK(&object_type->wizards, sorcery_cache_create, NULL, object, 0); + struct sorcery_details sdetails = { + .sorcery = sorcery, + .obj = object, + }; + + AST_VECTOR_CALLBACK(&object_type->wizards, sorcery_cache_create, NULL, &sdetails, 0); } AST_VECTOR_RW_UNLOCK(&object_type->wizards); @@ -2332,4 +2337,4 @@ int ast_sorcery_is_object_field_registered(const struct ast_sorcery_object_type const char *ast_sorcery_get_module(const struct ast_sorcery *sorcery) { return sorcery->module_name; -}
\ No newline at end of file +} |