comparison src/core/ngx_resolver.c @ 364:a39aab45a53f NGINX_0_6_26

nginx 0.6.26 *) Bugfix: the "proxy_store" and "fastcgi_store" directives did not check a response length. *) Bugfix: a segmentation fault occurred in worker process, if big value was used in a "expires" directive. Thanks to Joaquin Cuenca Abela. *) Bugfix: nginx incorrectly detected cache line size on Pentium 4. Thanks to Gena Makhomed. *) Bugfix: in proxied or FastCGI subrequests a client original method was used instead of the GET method. *) Bugfix: socket leak in HTTPS mode if deferred accept was used. Thanks to Ben Maurer. *) Bugfix: nginx issued the bogus error message "SSL_shutdown() failed (SSL: )"; bug appeared in 0.6.23. *) Bugfix: in HTTPS mode requests might fail with the "bad write retry" error; bug appeared in 0.6.23.
author Igor Sysoev <http://sysoev.ru>
date Mon, 11 Feb 2008 00:00:00 +0300
parents 9121a0a91f47
children babd3d9efb62
comparison
equal deleted inserted replaced
363:6999caedb665 364:a39aab45a53f
213 213
214 /* lock alloc mutex */ 214 /* lock alloc mutex */
215 215
216 if (ctx->event) { 216 if (ctx->event) {
217 ngx_resolver_free_locked(r, ctx->event); 217 ngx_resolver_free_locked(r, ctx->event);
218 } 218 ctx->event = NULL;
219 219 }
220 ngx_resolver_free_locked(r, ctx);
221 220
222 /* unlock alloc mutex */ 221 /* unlock alloc mutex */
223 222
224 return NGX_ERROR; 223 return NGX_ERROR;
225 } 224 }
785 if (ngx_resolver_send_query(r, rn) == NGX_OK) { 784 if (ngx_resolver_send_query(r, rn) == NGX_OK) {
786 785
787 rn->expire = now + r->resend_timeout; 786 rn->expire = now + r->resend_timeout;
788 787
789 ngx_queue_insert_head(queue, &rn->queue); 788 ngx_queue_insert_head(queue, &rn->queue);
790
791 continue;
792 } 789 }
790
791 continue;
793 } 792 }
794 793
795 ngx_rbtree_delete(tree, &rn->node); 794 ngx_rbtree_delete(tree, &rn->node);
796 795
797 ngx_resolver_free_node(r, rn); 796 ngx_resolver_free_node(r, rn);