diff --git a/io/io_canread.c b/io/io_canread.c index bca6fd5..b7261b8 100644 --- a/io/io_canread.c +++ b/io/io_canread.c @@ -31,9 +31,9 @@ int64 io_canread() { e->next_read=alt_firstread; alt_firstread=r; debug_printf(("io_canread: enqueue %ld in alt read queue (next is %ld)\n",alt_firstread,e->next_read)); -#else - e->canread=0; #endif + if (io_waitmode!=SIGIO) + e->canread=0; return r; } } diff --git a/io/io_canwrite.c b/io/io_canwrite.c index 67a0926..9875e6e 100644 --- a/io/io_canwrite.c +++ b/io/io_canwrite.c @@ -31,9 +31,9 @@ int64 io_canwrite() { e->next_write=alt_firstwrite; alt_firstwrite=r; debug_printf(("io_canwrite: enqueue %ld in alt write queue (next is %ld)\n",alt_firstwrite,e->next_write)); -#else - e->canwrite=0; #endif + if (io_waitmode!=SIGIO) + e->canwrite=0; return r; } }