> --- a/posix-aio-compat.c > +++ b/posix-aio-compat.c > @@ -502,7 +502,8 @@ static void aio_signal_handler(int signum) > if (posix_aio_state) { > char byte = 0; > > - write(posix_aio_state->wfd, &byte, sizeof(byte)); > + if (write(posix_aio_state->wfd, &byte, sizeof(byte)) != sizeof(byte)) > + die("write()");
I'm pretty sure this change is wrong, and shows why you should never blindly believe dumb analysis tools. The write may fail harmlessly if the pipe is already full. Paul