summaryrefslogtreecommitdiff
path: root/main/loader.c
diff options
context:
space:
mode:
authorMatthew Nicholson <mnicholson@digium.com>2010-07-09 17:50:45 +0000
committerMatthew Nicholson <mnicholson@digium.com>2010-07-09 17:50:45 +0000
commit3fd53f575c00d19ef6ce336dbef22f1b2af7c51b (patch)
tree3bb1e0fd336a0cfb18cd653f66a42a59b7bf2124 /main/loader.c
parentda8450323f9d391737bfeff42306905b27419942 (diff)
Merged revisions 275143 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r275143 | mnicholson | 2010-07-09 12:50:05 -0500 (Fri, 09 Jul 2010) | 2 lines don't unload modules that returned AST_MODULE_LOAD_DECLINE when they were loaded ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@275144 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'main/loader.c')
-rw-r--r--main/loader.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/main/loader.c b/main/loader.c
index f44cef9f5..69a5a8cd0 100644
--- a/main/loader.c
+++ b/main/loader.c
@@ -467,7 +467,7 @@ void ast_module_shutdown(void)
continue;
}
AST_LIST_REMOVE_CURRENT(entry);
- if (mod->info->unload) {
+ if (mod->flags.running && !mod->flags.declined && mod->info->unload) {
mod->info->unload();
}
AST_LIST_HEAD_DESTROY(&mod->users);
@@ -494,7 +494,7 @@ int ast_unload_resource(const char *resource_name, enum ast_module_unload_mode f
return -1;
}
- if (!(mod->flags.running || mod->flags.declined))
+ if (!mod->flags.running || mod->flags.declined)
error = 1;
if (!error && (mod->usecount > 0)) {