diff options
author | Benjamin Franzke <benjaminfranzke@googlemail.com> | 2011-05-05 11:03:10 +0200 |
---|---|---|
committer | Benjamin Franzke <benjaminfranzke@googlemail.com> | 2011-06-20 19:27:27 +0200 |
commit | 26e652e6f10b7a1b69ec07f1c3644594f76ad366 (patch) | |
tree | 8b6c207e98fa3b6cd1dafc222ee33da280032bfb | |
parent | 7c9b068f37971ae1b5f923ea4541e31a5a5117c8 (diff) |
Fix some more missing cloexec's
-rw-r--r-- | src/wfdevent.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/wfdevent.c b/src/wfdevent.c index bca6a45..16d4729 100644 --- a/src/wfdevent.c +++ b/src/wfdevent.c @@ -183,7 +183,8 @@ wfd_event_update(struct wfd_device *device, } memset(&ep, 0, sizeof ep); - event->source_bind_event_queue_fd = eventfd(0, EFD_NONBLOCK | EFD_SEMAPHORE); + event->source_bind_event_queue_fd = + eventfd(0, EFD_CLOEXEC | EFD_NONBLOCK | EFD_SEMAPHORE); ep.events = EPOLLIN; ep.data.fd = event->source_bind_event_queue_fd; ret = epoll_ctl(event->epoll_fd, EPOLL_CTL_ADD, @@ -303,7 +304,7 @@ wfd_create_event(struct wfd_device *device, gettimeofday(&tv, NULL); event->start_time_msec = tv.tv_sec * 1e3 + tv.tv_usec / 1e3; - event->epoll_fd = epoll_create(2); + event->epoll_fd = epoll_create1(EPOLL_CLOEXEC); if (event->epoll_fd == -1) { fprintf(stderr, "failed to crate epoll instance: %m\n"); free(event); @@ -555,7 +556,8 @@ wfd_event_async(struct wfd_device *device, event->egl_display = (EGLDisplay) egl_display; event->egl_sync = (EGLSyncKHR) egl_sync; - event->thread_destroy_fd = eventfd(0, EFD_NONBLOCK | EFD_SEMAPHORE); + event->thread_destroy_fd = + eventfd(0, EFD_CLOEXEC | EFD_NONBLOCK | EFD_SEMAPHORE); memset(&ep, 0, sizeof ep); ep.events = EPOLLIN; |