aboutsummaryrefslogtreecommitdiff
path: root/jim-eventloop.c
diff options
context:
space:
mode:
authorSteve Bennett <steveb@workware.net.au>2011-09-17 10:18:02 +1000
committerSteve Bennett <steveb@workware.net.au>2011-09-24 14:55:46 +1000
commit603d6e443cb2d9f8b83d75483985c59b2044d74e (patch)
tree21f367d628b92dd1915ebf560ddce69471dafee7 /jim-eventloop.c
parent0547bb3caec933de0f8239112994fc523d8481d0 (diff)
downloadjimtcl-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>
Diffstat (limited to 'jim-eventloop.c')
-rw-r--r--jim-eventloop.c21
1 files changed, 8 insertions, 13 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);