summaryrefslogtreecommitdiffhomepage
path: root/src/core
diff options
context:
space:
mode:
authorSergey Kandaurov <pluknet@nginx.com>2021-03-30 23:34:51 +0300
committerSergey Kandaurov <pluknet@nginx.com>2021-03-30 23:34:51 +0300
commitdd98809befadeda443a0e25da70c3020e613481e (patch)
tree9a21777e29904ad66ddb5b852d55036aff15476b /src/core
parent7d1cf8ffb442727bc8e54630dd565c8139cead67 (diff)
parent7b053dd1b20237622f89148e6c01a43927a4572a (diff)
downloadnginx-dd98809befadeda443a0e25da70c3020e613481e.tar.gz
nginx-dd98809befadeda443a0e25da70c3020e613481e.tar.bz2
Merged with the default branch.
Diffstat (limited to 'src/core')
-rw-r--r--src/core/nginx.h4
-rw-r--r--src/core/ngx_resolver.c19
2 files changed, 19 insertions, 4 deletions
diff --git a/src/core/nginx.h b/src/core/nginx.h
index a72666cdd..ba70b4ceb 100644
--- a/src/core/nginx.h
+++ b/src/core/nginx.h
@@ -9,8 +9,8 @@
#define _NGINX_H_INCLUDED_
-#define nginx_version 1019008
-#define NGINX_VERSION "1.19.8"
+#define nginx_version 1019009
+#define NGINX_VERSION "1.19.9"
#define NGINX_VER "nginx/" NGINX_VERSION
#ifdef NGX_BUILD
diff --git a/src/core/ngx_resolver.c b/src/core/ngx_resolver.c
index 5b716ee75..49616b776 100644
--- a/src/core/ngx_resolver.c
+++ b/src/core/ngx_resolver.c
@@ -1563,13 +1563,28 @@ ngx_resolver_udp_read(ngx_event_t *rev)
do {
n = ngx_udp_recv(c, buf, NGX_RESOLVER_UDP_SIZE);
- if (n < 0) {
- return;
+ if (n == NGX_AGAIN) {
+ break;
+ }
+
+ if (n == NGX_ERROR) {
+ goto failed;
}
ngx_resolver_process_response(rec->resolver, buf, n, 0);
} while (rev->ready);
+
+ if (ngx_handle_read_event(rev, 0) != NGX_OK) {
+ goto failed;
+ }
+
+ return;
+
+failed:
+
+ ngx_close_connection(rec->udp);
+ rec->udp = NULL;
}