From 17f3955f84ba0d9bcba9f935a963a3317b5cac59 Mon Sep 17 00:00:00 2001 From: leitner Date: Sat, 1 Nov 2003 04:51:07 +0000 Subject: [PATCH] handle BSD errors --- io/io_waituntil2.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/io/io_waituntil2.c b/io/io_waituntil2.c index b404e9e..92286e9 100644 --- a/io/io_waituntil2.c +++ b/io/io_waituntil2.c @@ -59,6 +59,11 @@ int64 io_waituntil2(int64 milliseconds) { for (i=n-1; i>=0; --i) { io_entry* e=array_get(&io_fds,sizeof(io_entry),y[--n].ident); if (e) { + if (y[n].flags&EV_ERROR) { + /* error; signal whatever app is looking for */ + if (e->wantread) y[n].filter=EVFILT_READ; else + if (e->wantwrite) y[n].filter=EVFILE_WRITE; + } if (!e->canread && (y[n].filter==EVFILT_READ)) { e->canread=1; e->next_read=first_readable;