Simplified ngx_http_init_listening(). There is no need to set "i" to 0, as it's expected to be 0 assuming the bindings are properly sorted, and we already rely on this when explicitly set hport->naddrs to 1. Remaining conditional code is replaced with identical "hport->naddrs = i + 1". Identical modifications are done in the mail and stream modules, in the ngx_mail_optimize_servers() and ngx_stream_optimize_servers() functions, respectively. No functional changes.
diff --git a/src/http/ngx_http.c b/src/http/ngx_http.c index 924c4b5..adb4b6f 100644 --- a/src/http/ngx_http.c +++ b/src/http/ngx_http.c
@@ -1719,13 +1719,7 @@ ls->servers = hport; - if (i == last - 1) { - hport->naddrs = last; - - } else { - hport->naddrs = 1; - i = 0; - } + hport->naddrs = i + 1; switch (ls->sockaddr->sa_family) {
diff --git a/src/mail/ngx_mail.c b/src/mail/ngx_mail.c index 48ce286..f10f08c 100644 --- a/src/mail/ngx_mail.c +++ b/src/mail/ngx_mail.c
@@ -392,13 +392,7 @@ ls->servers = mport; - if (i == last - 1) { - mport->naddrs = last; - - } else { - mport->naddrs = 1; - i = 0; - } + mport->naddrs = i + 1; switch (ls->sockaddr->sa_family) { #if (NGX_HAVE_INET6)
diff --git a/src/stream/ngx_stream.c b/src/stream/ngx_stream.c index e5ffcf9..18aea28 100644 --- a/src/stream/ngx_stream.c +++ b/src/stream/ngx_stream.c
@@ -393,13 +393,7 @@ ls->servers = stport; - if (i == last - 1) { - stport->naddrs = last; - - } else { - stport->naddrs = 1; - i = 0; - } + stport->naddrs = i + 1; switch (ls->sockaddr->sa_family) { #if (NGX_HAVE_INET6)