--- embedaddon/lighttpd/src/fdevent_solaris_devpoll.c 2013/10/14 10:32:48 1.1.1.1 +++ embedaddon/lighttpd/src/fdevent_solaris_devpoll.c 2016/11/02 10:35:00 1.1.1.3 @@ -1,3 +1,5 @@ +#include "first.h" + #include "fdevent.h" #include "buffer.h" #include "log.h" @@ -121,14 +123,7 @@ int fdevent_solaris_devpoll_reset(fdevents *ev) { return -1; } - if (fcntl(ev->devpoll_fd, F_SETFD, FD_CLOEXEC) < 0) { - log_error_write(ev->srv, __FILE__, __LINE__, "SSS", - "fcntl /dev/poll fd failed (", strerror(errno), "), try to set server.event-handler = \"poll\" or \"select\""); - - close(ev->devpoll_fd); - - return -1; - } + fd_close_on_exec(ev->devpoll_fd); return 0; } int fdevent_solaris_devpoll_init(fdevents *ev) { @@ -148,6 +143,7 @@ int fdevent_solaris_devpoll_init(fdevents *ev) { SET(event_get_revent); ev->devpollfds = malloc(sizeof(*ev->devpollfds) * ev->maxfds); + force_assert(NULL != ev->devpollfds); if ((ev->devpoll_fd = open("/dev/poll", O_RDWR)) < 0) { log_error_write(ev->srv, __FILE__, __LINE__, "SSS",