diff options
author | Jérôme Loyet <fat@php.net> | 2010-12-18 11:22:11 +0000 |
---|---|---|
committer | Jérôme Loyet <fat@php.net> | 2010-12-18 11:22:11 +0000 |
commit | e77d3268d72a0d7ab9ff1ab56435d93bdefbf1f3 (patch) | |
tree | 89cb4af15d9c6da1d9e5a5678b28309895d33823 /sapi | |
parent | 2070f153f9ddd6c1039e483872f8773e68fc8768 (diff) | |
download | php-git-e77d3268d72a0d7ab9ff1ab56435d93bdefbf1f3.tar.gz |
- Fixed bug #53527 (php-fpm --test doesn't set a valuable return value).
Diffstat (limited to 'sapi')
-rw-r--r-- | sapi/fpm/fpm/fpm.c | 22 | ||||
-rw-r--r-- | sapi/fpm/fpm/fpm.h | 1 | ||||
-rw-r--r-- | sapi/fpm/fpm/fpm_conf.c | 1 |
3 files changed, 22 insertions, 2 deletions
diff --git a/sapi/fpm/fpm/fpm.c b/sapi/fpm/fpm/fpm.c index 17a215c888..f9d2a75b6d 100644 --- a/sapi/fpm/fpm/fpm.c +++ b/sapi/fpm/fpm/fpm.c @@ -21,7 +21,20 @@ #include "fpm_stdio.h" #include "zlog.h" -struct fpm_globals_s fpm_globals; +struct fpm_globals_s fpm_globals = { + .parent_pid = 0, + .argc = NULL, + .argv = NULL, + .config = NULL, + .prefix = NULL, + .running_children = 0, + .error_log_fd = 0, + .log_level = 0, + .listening_socket = 0, + .max_requests = 0, + .is_child = 0, + .test_successful = 0 + }; int fpm_init(int argc, char **argv, char *config, char *prefix, int test_conf) /* {{{ */ { @@ -43,7 +56,12 @@ int fpm_init(int argc, char **argv, char *config, char *prefix, int test_conf) / 0 > fpm_sockets_init_main() || 0 > fpm_worker_pool_init_main() || 0 > fpm_event_init_main()) { - return -1; + + if (fpm_globals.test_successful) { + exit(0); + } else { + return -1; + } } if (0 > fpm_conf_write_pid()) { diff --git a/sapi/fpm/fpm/fpm.h b/sapi/fpm/fpm/fpm.h index 63e3bacca4..f06d9ed6a9 100644 --- a/sapi/fpm/fpm/fpm.h +++ b/sapi/fpm/fpm/fpm.h @@ -22,6 +22,7 @@ struct fpm_globals_s { int listening_socket; /* for this child */ int max_requests; /* for this child */ int is_child; + int test_successful; }; extern struct fpm_globals_s fpm_globals; diff --git a/sapi/fpm/fpm/fpm_conf.c b/sapi/fpm/fpm/fpm_conf.c index f38227c2f2..5d6fe770cd 100644 --- a/sapi/fpm/fpm/fpm_conf.c +++ b/sapi/fpm/fpm/fpm_conf.c @@ -1218,6 +1218,7 @@ int fpm_conf_init_main(int test_conf) /* {{{ */ fpm_conf_dump(); } zlog(ZLOG_NOTICE, "configuration file %s test is successful\n", fpm_globals.config); + fpm_globals.test_successful = 1; return -1; } |