diff options
author | Steve Bennett <steveb@workware.net.au> | 2011-09-17 10:18:02 +1000 |
---|---|---|
committer | Steve Bennett <steveb@workware.net.au> | 2011-09-24 14:55:46 +1000 |
commit | 603d6e443cb2d9f8b83d75483985c59b2044d74e (patch) | |
tree | 21f367d628b92dd1915ebf560ddce69471dafee7 | |
parent | 0547bb3caec933de0f8239112994fc523d8481d0 (diff) | |
download | jimtcl-603d6e443cb2d9f8b83d75483985c59b2044d74e.zip jimtcl-603d6e443cb2d9f8b83d75483985c59b2044d74e.tar.gz jimtcl-603d6e443cb2d9f8b83d75483985c59b2044d74e.tar.bz2 |
Cleanup in jim-eventloop
"eof" event no longer exists
Signed-off-by: Steve Bennett <steveb@workware.net.au>
-rw-r--r-- | jim-eventloop.c | 21 | ||||
-rw-r--r-- | jim-eventloop.h | 1 |
2 files changed, 8 insertions, 14 deletions
diff --git a/jim-eventloop.c b/jim-eventloop.c index f2a5fd0..a7efdc2 100644 --- a/jim-eventloop.c +++ b/jim-eventloop.c @@ -436,21 +436,16 @@ int Jim_ProcessEvents(Jim_Interp *interp, int flags) fe = eventLoop->fileEventHead; while (fe != NULL) { int fd = fileno(fe->handle); + int mask = 0; - if ((fe->mask & JIM_EVENT_READABLE && FD_ISSET(fd, &rfds)) || - (fe->mask & JIM_EVENT_WRITABLE && FD_ISSET(fd, &wfds)) || - (fe->mask & JIM_EVENT_EXCEPTION && FD_ISSET(fd, &efds))) { - int mask = 0; + if ((fe->mask & JIM_EVENT_READABLE) && FD_ISSET(fd, &rfds)) + mask |= JIM_EVENT_READABLE; + if (fe->mask & JIM_EVENT_WRITABLE && FD_ISSET(fd, &wfds)) + mask |= JIM_EVENT_WRITABLE; + if (fe->mask & JIM_EVENT_EXCEPTION && FD_ISSET(fd, &efds)) + mask |= JIM_EVENT_EXCEPTION; - if ((fe->mask & JIM_EVENT_READABLE) && FD_ISSET(fd, &rfds)) { - mask |= JIM_EVENT_READABLE; - if ((fe->mask & JIM_EVENT_FEOF) && feof(fe->handle)) - mask |= JIM_EVENT_FEOF; - } - if (fe->mask & JIM_EVENT_WRITABLE && FD_ISSET(fd, &wfds)) - mask |= JIM_EVENT_WRITABLE; - if (fe->mask & JIM_EVENT_EXCEPTION && FD_ISSET(fd, &efds)) - mask |= JIM_EVENT_EXCEPTION; + if (mask) { if (fe->fileProc(interp, fe->clientData, mask) != JIM_OK) { /* Remove the element on handler error */ Jim_DeleteFileHandler(interp, fe->handle); diff --git a/jim-eventloop.h b/jim-eventloop.h index 04fe979..4da5408 100644 --- a/jim-eventloop.h +++ b/jim-eventloop.h @@ -61,7 +61,6 @@ typedef void Jim_EventFinalizerProc(Jim_Interp *interp, void *clientData); #define JIM_EVENT_READABLE 1 #define JIM_EVENT_WRITABLE 2 #define JIM_EVENT_EXCEPTION 4 -#define JIM_EVENT_FEOF 8 JIM_EXPORT void Jim_CreateFileHandler (Jim_Interp *interp, FILE *handle, int mask, |