summaryrefslogtreecommitdiff
path: root/main/asterisk.c
diff options
context:
space:
mode:
authorGeorge Joseph <george.joseph@fairview5.com>2015-04-09 23:08:10 +0000
committerGeorge Joseph <george.joseph@fairview5.com>2015-04-09 23:08:10 +0000
commit9a63ada03af4a9c65819d21de727817bed93690a (patch)
tree5ea2fcd7bfbd2c9f4c264aaf845284fbe6738e57 /main/asterisk.c
parent520b9f217402f036967d0b3dba8e24db6766ae93 (diff)
loader/main: Don't set ast_fully_booted until deferred reloads are processed
Until we have a true module management facility it's sometimes necessary for one module to force a reload on another before its own load is complete. If Asterisk isn't fully booted yet, these reloads are deferred. The problem is that asterisk reports fully booted before processing the deferred reloads which means Asterisk really isn't quite ready when it says it is. This patch moves the report of fully booted after the processing of the deferred reloads is complete. Since the pjsip stack has the most number of related modules, I ran the channels/pjsip testsuite to make sure there aren't any issues. All tests passed. Tested-by: George Joseph Review: https://reviewboard.asterisk.org/r/4604/ ........ Merged revisions 434544 from http://svn.asterisk.org/svn/asterisk/branches/13 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@434546 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'main/asterisk.c')
-rw-r--r--main/asterisk.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/main/asterisk.c b/main/asterisk.c
index 3eaaf183d..baf5ded4f 100644
--- a/main/asterisk.c
+++ b/main/asterisk.c
@@ -4670,11 +4670,11 @@ int main(int argc, char *argv[])
sig_alert_pipe[0] = sig_alert_pipe[1] = -1;
}
+ ast_process_pending_reloads();
+
ast_set_flag(&ast_options, AST_OPT_FLAG_FULLY_BOOTED);
publish_fully_booted();
- ast_process_pending_reloads();
-
pthread_sigmask(SIG_UNBLOCK, &sigs, NULL);
#if defined(__AST_DEBUG_MALLOC)