summaryrefslogtreecommitdiff
path: root/server
diff options
context:
space:
mode:
authorJim Jagielski <jim@apache.org>2017-05-02 11:00:14 +0000
committerJim Jagielski <jim@apache.org>2017-05-02 11:00:14 +0000
commitbeed75c4efa3b8cbe7dcc583d4f6b50f5f78310d (patch)
tree097accb96ad89c2e8ee807235b7d7ffec1706008 /server
parent3e5949d0013eeef1cbd83931694e892bfaadb91a (diff)
downloadhttpd-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.c17
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);
}