diff --git a/openbsd-compat/bsd-pselect.c b/openbsd-compat/bsd-pselect.c index 2cda0b587..da34b41d8 100644 --- a/openbsd-compat/bsd-pselect.c +++ b/openbsd-compat/bsd-pselect.c @@ -114,9 +114,11 @@ notify_done(fd_set *readset) { char c; - if (notify_pipe[0] != -1 && FD_ISSET(notify_pipe[0], readset)) + if (notify_pipe[0] != -1 && FD_ISSET(notify_pipe[0], readset)) { while (read(notify_pipe[0], &c, 1) != -1) debug2_f("reading"); + FD_CLR(notify_pipe[0], readset); + } } /*ARGSUSED*/