sorcery: Fix cache creation callback.

The cache creation callback function expects to receive a sorcery_details
structure and not just a standalone object.

Change-Id: I3e4a5a137cb25292eb52d7a14cbb6daa09213450
This commit is contained in:
Joshua Colp
2015-05-26 09:44:18 -03:00
parent e1a64e021b
commit a7af6bca3c

View File

@@ -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;
}
}