diff options
Diffstat (limited to 'main/loader.c')
-rw-r--r-- | main/loader.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/main/loader.c b/main/loader.c index e6e688307..ba6af732d 100644 --- a/main/loader.c +++ b/main/loader.c @@ -743,9 +743,8 @@ static enum ast_module_load_result start_resource(struct ast_module *mod) mod->flags.declined = 1; break; case AST_MODULE_LOAD_FAILURE: - break; - case AST_MODULE_LOAD_SKIP: - /* modules should never return this value */ + case AST_MODULE_LOAD_SKIP: /* modules should never return this value */ + case AST_MODULE_LOAD_PRIORITY: break; } @@ -807,7 +806,7 @@ static enum ast_module_load_result load_resource(const char *resource_name, unsi if (resource_heap) { ast_heap_push(resource_heap, mod); - res = AST_MODULE_LOAD_SKIP; + res = AST_MODULE_LOAD_PRIORITY; } else { res = start_resource(mod); } @@ -893,6 +892,9 @@ static int load_resource_list(struct load_order *load_order, unsigned int global goto done; case AST_MODULE_LOAD_SKIP: break; + case AST_MODULE_LOAD_PRIORITY: + AST_LIST_REMOVE_CURRENT(entry); + break; } } AST_LIST_TRAVERSE_SAFE_END; @@ -908,6 +910,7 @@ static int load_resource_list(struct load_order *load_order, unsigned int global res = -1; goto done; case AST_MODULE_LOAD_SKIP: + case AST_MODULE_LOAD_PRIORITY: break; } } |