]> git.kaiwu.me - nginx.git/commitdiff
Resolver: fixed possible premature stop of the resend timer.
authorDmitry Volyntsev <xeioex@nginx.com>
Fri, 16 Dec 2016 15:21:42 +0000 (18:21 +0300)
committerDmitry Volyntsev <xeioex@nginx.com>
Fri, 16 Dec 2016 15:21:42 +0000 (18:21 +0300)
Previously, ngx_resolve_name_done() and ngx_resolve_addr_done()
may have stopped the resend timer prematurely while srv_resend_queue
was not empty.

src/core/ngx_resolver.c

index fc25c66337ff6bf2d109201a81e34a274ac7bfab..d5f06eb1d15b71d2c5cbf4f73697df5e8c11f865 100644 (file)
@@ -1556,6 +1556,7 @@ static ngx_uint_t
 ngx_resolver_resend_empty(ngx_resolver_t *r)
 {
     return ngx_queue_empty(&r->name_resend_queue)
+           && ngx_queue_empty(&r->srv_resend_queue)
 #if (NGX_HAVE_INET6)
            && ngx_queue_empty(&r->addr6_resend_queue)
 #endif