projects
/
yaz-moved-to-github.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Now we're pretty much set for nonblocking I/O.
[yaz-moved-to-github.git]
/
server
/
eventl.c
diff --git
a/server/eventl.c
b/server/eventl.c
index
980b0c2
..
104088c
100644
(file)
--- a/
server/eventl.c
+++ b/
server/eventl.c
@@
-4,7
+4,13
@@
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: eventl.c,v $
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: eventl.c,v $
- * Revision 1.3 1995-03-14 11:30:14 quinn
+ * Revision 1.5 1995-03-15 08:37:41 quinn
+ * Now we're pretty much set for nonblocking I/O.
+ *
+ * Revision 1.4 1995/03/14 16:59:48 quinn
+ * Bug-fixes
+ *
+ * Revision 1.3 1995/03/14 11:30:14 quinn
* Works better now.
*
* Revision 1.2 1995/03/14 10:27:59 quinn
* Works better now.
*
* Revision 1.2 1995/03/14 10:27:59 quinn
@@
-36,6
+42,7
@@
IOCHAN iochan_create(int fd, IOC_CALLBACK cb, int flags)
new->flags = flags;
new->fun = cb;
new->next = iochans;
new->flags = flags;
new->fun = cb;
new->next = iochans;
+ new->force_event = 0;
iochans = new;
return new;
}
iochans = new;
return new;
}
@@
-74,8
+81,6
@@
int event_loop()
continue;
return 1;
}
continue;
return 1;
}
- if (!res)
- continue;
for (p = iochans; p; p = nextp)
{
int force_event = p->force_event;
for (p = iochans; p; p = nextp)
{
int force_event = p->force_event;
@@
-84,7
+89,7
@@
int event_loop()
nextp = p->next;
if (FD_ISSET(p->fd, &in) || force_event == EVENT_INPUT)
(*p->fun)(p, EVENT_INPUT);
nextp = p->next;
if (FD_ISSET(p->fd, &in) || force_event == EVENT_INPUT)
(*p->fun)(p, EVENT_INPUT);
- if (!p->destroyed && (FD_ISSET(p->fd, &in) ||
+ if (!p->destroyed && (FD_ISSET(p->fd, &out) ||
force_event == EVENT_OUTPUT))
(*p->fun)(p, EVENT_OUTPUT);
if (!p->destroyed && (FD_ISSET(p->fd, &except) ||
force_event == EVENT_OUTPUT))
(*p->fun)(p, EVENT_OUTPUT);
if (!p->destroyed && (FD_ISSET(p->fd, &except) ||