diff options
-rw-r--r-- | main/loader.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/main/loader.c b/main/loader.c index a79a2cf43..6bd9ed3db 100644 --- a/main/loader.c +++ b/main/loader.c @@ -472,7 +472,7 @@ void ast_module_shutdown(void) continue; } AST_LIST_REMOVE_CURRENT(&module_list, entry); - if (mod->info->unload) { + if (mod->flags.running && !mod->flags.declined && mod->info->unload) { mod->info->unload(); } AST_LIST_HEAD_DESTROY(&mod->users); @@ -498,7 +498,7 @@ int ast_unload_resource(const char *resource_name, enum ast_module_unload_mode f return 0; } - if (!(mod->flags.running || mod->flags.declined)) + if (!mod->flags.running || mod->flags.declined) error = 1; if (!mod->lib) { |