diff src/core/ngx_cycle.c @ 320:d621239c30f7

nginx-0.0.3-2004-04-18-23:06:02 import
author Igor Sysoev <igor@sysoev.ru>
date Sun, 18 Apr 2004 19:06:02 +0000
parents 56496082668b
children be40e9893a19
line wrap: on
line diff
--- a/src/core/ngx_cycle.c
+++ b/src/core/ngx_cycle.c
@@ -138,6 +138,12 @@ ngx_cycle_t *ngx_init_cycle(ngx_cycle_t 
         return NULL;
     }
 
+    if (ngx_test_config) {
+        ngx_log_error(NGX_LOG_INFO, log, 0,
+                      "the configuration file %s syntax is ok",
+                      cycle->conf_file.data);
+    }
+
 
     for (i = 0; ngx_modules[i]; i++) {
         if (ngx_modules[i]->type != NGX_CORE_MODULE) {
@@ -274,10 +280,12 @@ ngx_cycle_t *ngx_init_cycle(ngx_cycle_t 
 
 #if !(WIN32)
 
-    if (dup2(cycle->log->file->fd, STDERR_FILENO) == NGX_ERROR) {
-        ngx_log_error(NGX_LOG_EMERG, log, ngx_errno,
-                      "dup2(STDERR) failed");
-        failed = 1;
+    if (!failed && !ngx_test_config) {
+        if (dup2(cycle->log->file->fd, STDERR_FILENO) == NGX_ERROR) {
+            ngx_log_error(NGX_LOG_EMERG, log, ngx_errno,
+                          "dup2(STDERR) failed");
+            failed = 1;
+        }
     }
 
 #endif
@@ -299,6 +307,11 @@ ngx_cycle_t *ngx_init_cycle(ngx_cycle_t 
             }
         }
 
+        if (ngx_test_config) {
+            ngx_destroy_pool(pool);
+            return NULL;
+        }
+
         ls = cycle->listening.elts;
         for (i = 0; i < cycle->listening.nelts; i++) {
             if (ls[i].new && ls[i].fd == -1) {