nginx-0.0.3-2004-04-29-00:21:54 import
diff --git a/src/os/unix/ngx_process_cycle.c b/src/os/unix/ngx_process_cycle.c
index 4a281f0..2a45754 100644
--- a/src/os/unix/ngx_process_cycle.c
+++ b/src/os/unix/ngx_process_cycle.c
@@ -42,7 +42,8 @@
void ngx_master_process_cycle(ngx_cycle_t *cycle, ngx_master_ctx_t *ctx)
{
- char *title, *p;
+ char *title;
+ u_char *p;
size_t size;
ngx_int_t n;
ngx_uint_t i;
@@ -83,7 +84,7 @@
p = ngx_cpymem(title, master_process, sizeof(master_process) - 1);
for (n = 0; n < ctx->argc; n++) {
*p++ = ' ';
- p = ngx_cpystrn(p, ctx->argv[n], size);
+ p = ngx_cpystrn(p, (u_char *) ctx->argv[n], size);
}
ngx_setproctitle(title);
@@ -220,6 +221,15 @@
if (ngx_reconfigure) {
ngx_reconfigure = 0;
+
+ if (ngx_new_binary) {
+ ngx_log_error(NGX_LOG_INFO, cycle->log, 0, "start new workers");
+
+ ngx_start_worker_processes(cycle, ccf->worker_processes,
+ NGX_PROCESS_JUST_RESPAWN);
+ continue;
+ }
+
ngx_log_error(NGX_LOG_INFO, cycle->log, 0, "reconfiguring");
cycle = ngx_init_cycle(cycle);