summaryrefslogtreecommitdiff
path: root/deps/uv/src/win/stream.c
diff options
context:
space:
mode:
authorcjihrig <cjihrig@gmail.com>2019-09-09 13:08:37 -0400
committerRich Trott <rtrott@gmail.com>2019-09-12 00:49:02 -0700
commitdf0e2e3625d1f72e8b04e05ffa13997a51e9f0d7 (patch)
tree5ef978de762b47bcfc6323c48e7e22b862d6d657 /deps/uv/src/win/stream.c
parent62e8cc5e61a36ebe1bd913983a452961aa1c9946 (diff)
downloadandroid-node-v8-df0e2e3625d1f72e8b04e05ffa13997a51e9f0d7.tar.gz
android-node-v8-df0e2e3625d1f72e8b04e05ffa13997a51e9f0d7.tar.bz2
android-node-v8-df0e2e3625d1f72e8b04e05ffa13997a51e9f0d7.zip
deps: upgrade to libuv 1.32.0
Notable changes: - `uv_tcp_close_reset()` has been added. - `uv_udp_set_source_membership()` has been added. - A double free in `uv_free_cpu_info()` on OpenBSD has been fixed. - Defined, but empty environment variables can now be read on Windows. - Several improvements to the cmake build process. - The `EILSEQ` error code is now mapped by libuv. PR-URL: https://github.com/nodejs/node/pull/29508 Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com> Reviewed-By: Jiawen Geng <technicalcute@gmail.com> Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: David Carlier <devnexen@gmail.com> Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Beth Griggs <Bethany.Griggs@uk.ibm.com> Reviewed-By: James M Snell <jasnell@gmail.com>
Diffstat (limited to 'deps/uv/src/win/stream.c')
-rw-r--r--deps/uv/src/win/stream.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/deps/uv/src/win/stream.c b/deps/uv/src/win/stream.c
index 7656627e90..46a0709a38 100644
--- a/deps/uv/src/win/stream.c
+++ b/deps/uv/src/win/stream.c
@@ -198,8 +198,10 @@ int uv_try_write(uv_stream_t* stream,
int uv_shutdown(uv_shutdown_t* req, uv_stream_t* handle, uv_shutdown_cb cb) {
uv_loop_t* loop = handle->loop;
- if (!(handle->flags & UV_HANDLE_WRITABLE)) {
- return UV_EPIPE;
+ if (!(handle->flags & UV_HANDLE_WRITABLE) ||
+ handle->flags & UV_HANDLE_SHUTTING ||
+ uv__is_closing(handle)) {
+ return UV_ENOTCONN;
}
UV_REQ_INIT(req, UV_SHUTDOWN);
@@ -207,6 +209,7 @@ int uv_shutdown(uv_shutdown_t* req, uv_stream_t* handle, uv_shutdown_cb cb) {
req->cb = cb;
handle->flags &= ~UV_HANDLE_WRITABLE;
+ handle->flags |= UV_HANDLE_SHUTTING;
handle->stream.conn.shutdown_req = req;
handle->reqs_pending++;
REGISTER_HANDLE_REQ(loop, handle, req);