uloop: Fix race condition in SIGCHLD handling
[project/libubox.git] / uloop-epoll.c
index bb652fd..609ca6e 100644 (file)
@@ -23,7 +23,7 @@
 #define EPOLLRDHUP 0x2000
 #endif
 
 #define EPOLLRDHUP 0x2000
 #endif
 
-int uloop_init(void)
+static int uloop_init_pollfd(void)
 {
        if (poll_fd >= 0)
                return 0;
 {
        if (poll_fd >= 0)
                return 0;
@@ -52,7 +52,6 @@ static int register_poll(struct uloop_fd *fd, unsigned int flags)
        if (flags & ULOOP_EDGE_TRIGGER)
                ev.events |= EPOLLET;
 
        if (flags & ULOOP_EDGE_TRIGGER)
                ev.events |= EPOLLET;
 
-       ev.data.fd = fd->fd;
        ev.data.ptr = fd;
        fd->flags = flags;
 
        ev.data.ptr = fd;
        fd->flags = flags;