diff options
Diffstat (limited to 'main')
-rw-r--r-- | main/asterisk.c | 6 | ||||
-rw-r--r-- | main/loader.c | 1 | ||||
-rw-r--r-- | main/logger.c | 5 |
3 files changed, 11 insertions, 1 deletions
diff --git a/main/asterisk.c b/main/asterisk.c index 5c1052565..49db383f6 100644 --- a/main/asterisk.c +++ b/main/asterisk.c @@ -4400,7 +4400,11 @@ int main(int argc, char *argv[]) static inline void check_init(int init_result, const char *name) { if (init_result) { - printf("%s initialization failed.\n%s", name, term_quit()); + if (ast_is_logger_initialized()) { + ast_log(LOG_ERROR, "%s initialization failed. ASTERISK EXITING!\n%s", name, term_quit()); + } else { + fprintf(stderr, "%s initialization failed. ASTERISK EXITING!\n%s", name, term_quit()); + } ast_run_atexits(0); exit(init_result == -2 ? 2 : 1); } diff --git a/main/loader.c b/main/loader.c index 9beaf4d33..327bb528f 100644 --- a/main/loader.c +++ b/main/loader.c @@ -1245,6 +1245,7 @@ static int load_resource_list(struct load_order *load_order, unsigned int global case AST_MODULE_LOAD_DECLINE: break; case AST_MODULE_LOAD_FAILURE: + ast_log(LOG_ERROR, "*** Failed to load module %s\n", mod->resource); res = -1; goto done; case AST_MODULE_LOAD_SKIP: diff --git a/main/logger.c b/main/logger.c index 7d0d2de1e..75b6ea22f 100644 --- a/main/logger.c +++ b/main/logger.c @@ -1655,6 +1655,11 @@ static void logger_queue_init(void) } } +int ast_is_logger_initialized(void) +{ + return logger_initialized; +} + /*! * \brief Start the ast_queue_log() logger. * |