summaryrefslogtreecommitdiff
path: root/deps/uv/src/unix/os390-syscalls.c
diff options
context:
space:
mode:
authorcjihrig <cjihrig@gmail.com>2017-09-06 09:59:10 -0400
committercjihrig <cjihrig@gmail.com>2017-09-06 10:16:35 -0400
commit8485a7c0b71fd1dd36947a6dd02b75387805d9b7 (patch)
tree01394e3fce1af43e0153a9c5ef911ff127bad5eb /deps/uv/src/unix/os390-syscalls.c
parent1403d28e7ded280e7582daa6e999164588d2234e (diff)
downloadandroid-node-v8-8485a7c0b71fd1dd36947a6dd02b75387805d9b7.tar.gz
android-node-v8-8485a7c0b71fd1dd36947a6dd02b75387805d9b7.tar.bz2
android-node-v8-8485a7c0b71fd1dd36947a6dd02b75387805d9b7.zip
deps: upgrade libuv to 1.14.1
Fixes: https://github.com/nodejs/node/issues/12737 Fixes: https://github.com/nodejs/node/issues/13581 Fixes: https://github.com/nodejs/node/issues/15117 PR-URL: https://github.com/nodejs/node/pull/14866 Reviewed-By: Refael Ackermann <refack@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
Diffstat (limited to 'deps/uv/src/unix/os390-syscalls.c')
-rw-r--r--deps/uv/src/unix/os390-syscalls.c23
1 files changed, 6 insertions, 17 deletions
diff --git a/deps/uv/src/unix/os390-syscalls.c b/deps/uv/src/unix/os390-syscalls.c
index 7edf2358d4..08623f4eaf 100644
--- a/deps/uv/src/unix/os390-syscalls.c
+++ b/deps/uv/src/unix/os390-syscalls.c
@@ -183,33 +183,22 @@ int epoll_wait(uv__os390_epoll* lst, struct epoll_event* events,
int pollret;
int reventcount;
- uv_mutex_lock(&global_epoll_lock);
- uv_mutex_unlock(&global_epoll_lock);
size = lst->size;
pfds = lst->items;
pollret = poll(pfds, size, timeout);
- if(pollret == -1)
+ if (pollret <= 0)
return pollret;
reventcount = 0;
- for (int i = 0; i < lst->size && i < maxevents; ++i) {
+ for (int i = 0;
+ i < lst->size && i < maxevents && reventcount < pollret; ++i) {
struct epoll_event ev;
- ev.events = 0;
- ev.fd = pfds[i].fd;
- if(!pfds[i].revents)
+ if (pfds[i].fd == -1 || pfds[i].revents == 0)
continue;
- if(pfds[i].revents & POLLRDNORM)
- ev.events = ev.events | POLLIN;
-
- if(pfds[i].revents & POLLWRNORM)
- ev.events = ev.events | POLLOUT;
-
- if(pfds[i].revents & POLLHUP)
- ev.events = ev.events | POLLHUP;
-
- pfds[i].revents = 0;
+ ev.fd = pfds[i].fd;
+ ev.events = pfds[i].revents;
events[reventcount++] = ev;
}