diff options
author | Jim Jagielski <jim@apache.org> | 2017-05-02 11:00:14 +0000 |
---|---|---|
committer | Jim Jagielski <jim@apache.org> | 2017-05-02 11:00:14 +0000 |
commit | beed75c4efa3b8cbe7dcc583d4f6b50f5f78310d (patch) | |
tree | 097accb96ad89c2e8ee807235b7d7ffec1706008 /server | |
parent | 3e5949d0013eeef1cbd83931694e892bfaadb91a (diff) | |
download | httpd-beed75c4efa3b8cbe7dcc583d4f6b50f5f78310d.tar.gz |
Merge r1791975 from trunk:
PR61009: be as helpful as possible during -V operation
A configtest isn't useful if you're just trying to get compile settings.
Move the settings dump up to just after ap_read_config(), which has
already done the minimum necessary to figure out which MPM is in use.
Even if ap_read_config() failed, still print as many compile settings as
we can. The user will see the error log entry on stderr.
Submitted by: jchampion
Reviewed by: jchampion, covener, jim
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1793465 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'server')
-rw-r--r-- | server/main.c | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/server/main.c b/server/main.c index c5f35b9b44..ba9d91c6d0 100644 --- a/server/main.c +++ b/server/main.c @@ -629,10 +629,22 @@ int main(int argc, const char * const argv[]) } ap_server_conf = ap_read_config(process, ptemp, confname, &ap_conftree); if (!ap_server_conf) { + if (showcompile) { + /* Well, we tried. Show as much as we can, but exit nonzero to + * indicate that something's not right. The cause should have + * already been logged. */ + show_compile_settings(); + } destroy_and_exit_process(process, 1); } apr_pool_cleanup_register(pconf, &ap_server_conf, ap_pool_cleanup_set_null, apr_pool_cleanup_null); + + if (showcompile) { /* deferred due to dynamically loaded MPM */ + show_compile_settings(); + destroy_and_exit_process(process, 0); + } + /* sort hooks here to make sure pre_config hooks are sorted properly */ apr_hook_sort_all(); @@ -661,10 +673,7 @@ int main(int argc, const char * const argv[]) } if (ap_run_mode != AP_SQ_RM_NORMAL) { - if (showcompile) { /* deferred due to dynamically loaded MPM */ - show_compile_settings(); - } - else if (showdirectives) { /* deferred in case of DSOs */ + if (showdirectives) { /* deferred in case of DSOs */ ap_show_directives(); destroy_and_exit_process(process, 0); } |