# HG changeset patch # User Igor Sysoev # Date 1084218815 0 # Node ID 159dd60d257a07e38c8b513edfef1495755e2f1a # Parent f168a88e93f7d108c04ccc3f2021e05104747536 nginx-0.0.3-2004-05-10-23:53:35 import diff --git a/auto/cc b/auto/cc --- a/auto/cc +++ b/auto/cc @@ -241,7 +241,7 @@ case $CC in wcl386) - # Open Watcom 1.0 + # Open Watcom C 1.0 # optimization @@ -295,6 +295,9 @@ case $CC in # quiet CFLAGS="$CFLAGS -zq" + # Open Watcom C 1.2 + have=HAVE_C99_VARIADIC_MACROS . auto/have + # precompiled headers CORE_DEPS="$CORE_DEPS $OBJS\\ngx_config.pch" PCH="$OBJS\\ngx_config.pch" diff --git a/src/http/modules/proxy/ngx_http_proxy_handler.c b/src/http/modules/proxy/ngx_http_proxy_handler.c --- a/src/http/modules/proxy/ngx_http_proxy_handler.c +++ b/src/http/modules/proxy/ngx_http_proxy_handler.c @@ -1202,6 +1202,11 @@ static char *ngx_http_proxy_parse_upstre if (u->port_text.len > 0) { u->port = ngx_atoi(u->port_text.data, u->port_text.len); if (u->port > 0) { + + if (u->port == 80) { + u->default_port = 1; + } + u->port = htons((u_short) u->port); return NULL; } diff --git a/src/http/ngx_http_write_filter.c b/src/http/ngx_http_write_filter.c --- a/src/http/ngx_http_write_filter.c +++ b/src/http/ngx_http_write_filter.c @@ -70,7 +70,7 @@ int ngx_http_write_filter(ngx_http_reque { int last; off_t size, flush; - ngx_chain_t *cl, **ll, *chain; + ngx_chain_t *cl, *ln, **ll, *chain; ngx_http_write_filter_ctx_t *ctx; ngx_http_write_filter_conf_t *conf; @@ -105,8 +105,8 @@ int ngx_http_write_filter(ngx_http_reque /* add the new chain to the existent one */ - for (/* void */; in; in = in->next) { - ngx_alloc_link_and_set_hunk(cl, in->hunk, r->pool, NGX_ERROR); + for (ln = in; ln; ln = ln->next) { + ngx_alloc_link_and_set_hunk(cl, ln->hunk, r->pool, NGX_ERROR); *ll = cl; ll = &cl->next; @@ -129,11 +129,12 @@ int ngx_http_write_filter(ngx_http_reque ngx_http_write_filter_module); /* - * avoid the output if there is no last hunk, no flush point and - * the size of the hunks is smaller than "postpone_output" directive + * avoid the output if there is no last hunk, no flush point, + * there are the incoming hunks and the size of all hunks + * is smaller than "postpone_output" directive */ - if (!last && flush == 0 && size < (off_t) conf->postpone_output) { + if (!last && flush == 0 && in && size < (off_t) conf->postpone_output) { return NGX_OK; } @@ -142,6 +143,8 @@ int ngx_http_write_filter(ngx_http_reque } if (size == 0) { + ngx_log_error(NGX_LOG_ALERT, r->connection->log, 0, + "the http output chain is empty"); return NGX_OK; }