| Index: runtime/bin/eventhandler_linux.cc
|
| diff --git a/runtime/bin/eventhandler_linux.cc b/runtime/bin/eventhandler_linux.cc
|
| index fd410fece963efeb0dbf82db849ec03da3ea1299..8b35818ccd680ccf936c8ab4561e0bf569db23ac 100644
|
| --- a/runtime/bin/eventhandler_linux.cc
|
| +++ b/runtime/bin/eventhandler_linux.cc
|
| @@ -80,9 +80,15 @@ EventHandlerImplementation::EventHandlerImplementation()
|
| if (result != 0) {
|
| FATAL("Pipe creation failed");
|
| }
|
| - FDUtils::SetNonBlocking(interrupt_fds_[0]);
|
| - FDUtils::SetCloseOnExec(interrupt_fds_[0]);
|
| - FDUtils::SetCloseOnExec(interrupt_fds_[1]);
|
| + if (!FDUtils::SetNonBlocking(interrupt_fds_[0])) {
|
| + FATAL("Failed to set pipe fd non blocking\n");
|
| + }
|
| + if (!FDUtils::SetCloseOnExec(interrupt_fds_[0])) {
|
| + FATAL("Failed to set pipe fd close on exec\n");
|
| + }
|
| + if (!FDUtils::SetCloseOnExec(interrupt_fds_[1])) {
|
| + FATAL("Failed to set pipe fd close on exec\n");
|
| + }
|
| shutdown_ = false;
|
| // The initial size passed to epoll_create is ignore on newer (>=
|
| // 2.6.8) Linux versions
|
| @@ -91,7 +97,9 @@ EventHandlerImplementation::EventHandlerImplementation()
|
| if (epoll_fd_ == -1) {
|
| FATAL1("Failed creating epoll file descriptor: %i", errno);
|
| }
|
| - FDUtils::SetCloseOnExec(epoll_fd_);
|
| + if (!FDUtils::SetCloseOnExec(epoll_fd_)) {
|
| + FATAL("Failed to set epoll fd close on exec\n");
|
| + }
|
| // Register the interrupt_fd with the epoll instance.
|
| struct epoll_event event;
|
| event.events = EPOLLIN;
|
|
|