diff --git a/deps/uv/src/unix/core.c b/deps/uv/src/unix/core.c index ca74fb321a..1296aae11e 100644 --- a/deps/uv/src/unix/core.c +++ b/deps/uv/src/unix/core.c @@ -271,18 +271,6 @@ int uv_run_once(uv_loop_t* loop) { } -void uv__handle_init(uv_loop_t* loop, uv_handle_t* handle, - uv_handle_type type) { - loop->counters.handle_init++; - - handle->loop = loop; - handle->type = type; - handle->flags = UV__HANDLE_REF; /* ref the loop when active */ - handle->next_closing = NULL; - ngx_queue_insert_tail(&loop->handle_queue, &handle->handle_queue); -} - - void uv_update_time(uv_loop_t* loop) { loop->time = uv_hrtime() / 1000000; } diff --git a/deps/uv/src/uv-common.h b/deps/uv/src/uv-common.h index c86cb7daa0..4c316ec11d 100644 --- a/deps/uv/src/uv-common.h +++ b/deps/uv/src/uv-common.h @@ -153,4 +153,17 @@ UNUSED static void uv__handle_unref(uv_handle_t* h) { } #define uv__handle_unref(h) uv__handle_unref((uv_handle_t*)(h)) +UNUSED static void uv__handle_init(uv_loop_t* loop, + uv_handle_t* handle, + uv_handle_type type) { + loop->counters.handle_init++; + handle->loop = loop; + handle->type = type; + handle->flags = UV__HANDLE_REF; /* ref the loop when active */ + ngx_queue_insert_tail(&loop->handle_queue, &handle->handle_queue); +#ifndef _WIN32 + handle->next_closing = NULL; +#endif +} + #endif /* UV_COMMON_H_ */ diff --git a/deps/uv/src/win/async.c b/deps/uv/src/win/async.c index 1848023709..1b733c400e 100644 --- a/deps/uv/src/win/async.c +++ b/deps/uv/src/win/async.c @@ -69,8 +69,7 @@ void uv_async_endgame(uv_loop_t* loop, uv_async_t* handle) { int uv_async_init(uv_loop_t* loop, uv_async_t* handle, uv_async_cb async_cb) { uv_req_t* req; - uv_handle_init(loop, (uv_handle_t*) handle); - handle->type = UV_ASYNC; + uv__handle_init(loop, (uv_handle_t*) handle, UV_ASYNC); handle->async_sent = 0; handle->async_cb = async_cb; diff --git a/deps/uv/src/win/fs-event.c b/deps/uv/src/win/fs-event.c index ccf941d1bb..68e03e390b 100644 --- a/deps/uv/src/win/fs-event.c +++ b/deps/uv/src/win/fs-event.c @@ -36,8 +36,7 @@ const unsigned int uv_directory_watcher_buffer_size = 4096; static void uv_fs_event_init_handle(uv_loop_t* loop, uv_fs_event_t* handle, const char* filename, uv_fs_event_cb cb) { - uv_handle_init(loop, (uv_handle_t*) handle); - handle->type = UV_FS_EVENT; + uv__handle_init(loop, (uv_handle_t*) handle, UV_FS_EVENT); handle->cb = cb; handle->dir_handle = INVALID_HANDLE_VALUE; handle->buffer = NULL; diff --git a/deps/uv/src/win/handle-inl.h b/deps/uv/src/win/handle-inl.h index f069dd192f..ea2d9e0bc5 100644 --- a/deps/uv/src/win/handle-inl.h +++ b/deps/uv/src/win/handle-inl.h @@ -69,15 +69,6 @@ } while (0) -INLINE static void uv_handle_init(uv_loop_t* loop, uv_handle_t* handle) { - handle->loop = loop; - handle->flags = UV__HANDLE_REF; - ngx_queue_insert_tail(&loop->handle_queue, &handle->handle_queue); - - loop->counters.handle_init++; -} - - INLINE static void uv_want_endgame(uv_loop_t* loop, uv_handle_t* handle) { if (!(handle->flags & UV_HANDLE_ENDGAME_QUEUED)) { handle->flags |= UV_HANDLE_ENDGAME_QUEUED; diff --git a/deps/uv/src/win/loop-watcher.c b/deps/uv/src/win/loop-watcher.c index a753a0632a..615f7cdeb7 100644 --- a/deps/uv/src/win/loop-watcher.c +++ b/deps/uv/src/win/loop-watcher.c @@ -38,8 +38,7 @@ void uv_loop_watcher_endgame(uv_loop_t* loop, uv_handle_t* handle) { #define UV_LOOP_WATCHER_DEFINE(name, NAME) \ int uv_##name##_init(uv_loop_t* loop, uv_##name##_t* handle) { \ - uv_handle_init(loop, (uv_handle_t*) handle); \ - handle->type = UV_##NAME; \ + uv__handle_init(loop, (uv_handle_t*) handle, UV_##NAME); \ loop->counters.name##_init++; \ \ return 0; \ diff --git a/deps/uv/src/win/pipe.c b/deps/uv/src/win/pipe.c index 0551047123..77a1c7b757 100644 --- a/deps/uv/src/win/pipe.c +++ b/deps/uv/src/win/pipe.c @@ -74,9 +74,8 @@ static void uv_unique_pipe_name(char* ptr, char* name, size_t size) { int uv_pipe_init(uv_loop_t* loop, uv_pipe_t* handle, int ipc) { - uv_stream_init(loop, (uv_stream_t*)handle); + uv_stream_init(loop, (uv_stream_t*)handle, UV_NAMED_PIPE); - handle->type = UV_NAMED_PIPE; handle->reqs_pending = 0; handle->handle = INVALID_HANDLE_VALUE; handle->name = NULL; diff --git a/deps/uv/src/win/poll.c b/deps/uv/src/win/poll.c index ba31ae9efb..9800b71624 100644 --- a/deps/uv/src/win/poll.c +++ b/deps/uv/src/win/poll.c @@ -519,8 +519,7 @@ int uv_poll_init_socket(uv_loop_t* loop, uv_poll_t* handle, socket = base_socket; } - uv_handle_init(loop, (uv_handle_t*) handle); - handle->type = UV_POLL; + uv__handle_init(loop, (uv_handle_t*) handle, UV_POLL); handle->socket = socket; handle->events = 0; diff --git a/deps/uv/src/win/process.c b/deps/uv/src/win/process.c index a2bd33b879..4166de8a3b 100644 --- a/deps/uv/src/win/process.c +++ b/deps/uv/src/win/process.c @@ -101,8 +101,7 @@ typedef struct env_var { static void uv_process_init(uv_loop_t* loop, uv_process_t* handle) { - uv_handle_init(loop, (uv_handle_t*) handle); - handle->type = UV_PROCESS; + uv__handle_init(loop, (uv_handle_t*) handle, UV_PROCESS); handle->exit_cb = NULL; handle->pid = 0; handle->exit_signal = 0; @@ -1093,7 +1092,7 @@ static int init_child_stdio(uv_loop_t* loop, uv_process_options_t* options, uv_stream_t* stream = fdopt.data.stream; /* Leech the handle out of the stream. */ - if (stream->type = UV_TTY) { + if (stream->type == UV_TTY) { stream_handle = ((uv_tty_t*) stream)->handle; crt_flags = FOPEN | FDEV; } else if (stream->type == UV_NAMED_PIPE && diff --git a/deps/uv/src/win/stream-inl.h b/deps/uv/src/win/stream-inl.h index 91313566a1..7e2311c6b5 100644 --- a/deps/uv/src/win/stream-inl.h +++ b/deps/uv/src/win/stream-inl.h @@ -30,8 +30,10 @@ #include "req-inl.h" -INLINE static void uv_stream_init(uv_loop_t* loop, uv_stream_t* handle) { - uv_handle_init(loop, (uv_handle_t*) handle); +INLINE static void uv_stream_init(uv_loop_t* loop, + uv_stream_t* handle, + uv_handle_type type) { + uv__handle_init(loop, (uv_handle_t*) handle, type); handle->write_queue_size = 0; handle->activecnt = 0; diff --git a/deps/uv/src/win/tcp.c b/deps/uv/src/win/tcp.c index 6ea39a2b0d..daef567134 100644 --- a/deps/uv/src/win/tcp.c +++ b/deps/uv/src/win/tcp.c @@ -146,9 +146,8 @@ static int uv_tcp_set_socket(uv_loop_t* loop, uv_tcp_t* handle, int uv_tcp_init(uv_loop_t* loop, uv_tcp_t* handle) { - uv_stream_init(loop, (uv_stream_t*) handle); + uv_stream_init(loop, (uv_stream_t*) handle, UV_TCP); - handle->type = UV_TCP; handle->accept_reqs = NULL; handle->pending_accepts = NULL; handle->socket = INVALID_SOCKET; diff --git a/deps/uv/src/win/timer.c b/deps/uv/src/win/timer.c index 5ddcfca1f3..94b7b219c2 100644 --- a/deps/uv/src/win/timer.c +++ b/deps/uv/src/win/timer.c @@ -67,8 +67,7 @@ RB_GENERATE_STATIC(uv_timer_tree_s, uv_timer_s, tree_entry, uv_timer_compare); int uv_timer_init(uv_loop_t* loop, uv_timer_t* handle) { - uv_handle_init(loop, (uv_handle_t*) handle); - handle->type = UV_TIMER; + uv__handle_init(loop, (uv_handle_t*) handle, UV_TIMER); handle->timer_cb = NULL; handle->repeat = 0; diff --git a/deps/uv/src/win/tty.c b/deps/uv/src/win/tty.c index 047cad26fa..340bcdcb3f 100644 --- a/deps/uv/src/win/tty.c +++ b/deps/uv/src/win/tty.c @@ -112,10 +112,9 @@ int uv_tty_init(uv_loop_t* loop, uv_tty_t* tty, uv_file fd, int readable) { LeaveCriticalSection(&uv_tty_output_lock); } - uv_stream_init(loop, (uv_stream_t*) tty); + uv_stream_init(loop, (uv_stream_t*) tty, UV_TTY); uv_connection_init((uv_stream_t*) tty); - tty->type = UV_TTY; tty->handle = win_handle; tty->read_line_handle = NULL; tty->read_line_buffer = uv_null_buf_; diff --git a/deps/uv/src/win/udp.c b/deps/uv/src/win/udp.c index 10cca00afe..3f19fe303e 100644 --- a/deps/uv/src/win/udp.c +++ b/deps/uv/src/win/udp.c @@ -123,9 +123,8 @@ static int uv_udp_set_socket(uv_loop_t* loop, uv_udp_t* handle, int uv_udp_init(uv_loop_t* loop, uv_udp_t* handle) { - uv_handle_init(loop, (uv_handle_t*) handle); + uv__handle_init(loop, (uv_handle_t*) handle, UV_UDP); - handle->type = UV_UDP; handle->socket = INVALID_SOCKET; handle->reqs_pending = 0; handle->activecnt = 0;