summaryrefslogtreecommitdiff
path: root/main
diff options
context:
space:
mode:
Diffstat (limited to 'main')
-rw-r--r--main/asterisk.c6
-rw-r--r--main/loader.c1
-rw-r--r--main/logger.c5
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.
*