next attempt (I need a bsd shell)
This commit is contained in:
parent
efb1a8a2ae
commit
853242b078
@ -274,13 +274,13 @@ int64 io_waituntil2(int64 milliseconds) {
|
|||||||
|
|
||||||
if (!e->canread || e->wantread) {
|
if (!e->canread || e->wantread) {
|
||||||
newevents |= POLLIN;
|
newevents |= POLLIN;
|
||||||
EV_SET(kev, n, EVFILT_READ, EV_ADD|EV_ENABLE, 0, 0, 0); ++n;
|
EV_SET(kev, y[n].ident, EVFILT_READ, EV_ADD|EV_ENABLE, 0, 0, 0); ++nkev;
|
||||||
e->kernelwantread=1;
|
e->kernelwantread=1;
|
||||||
} else
|
} else
|
||||||
e->kernelwantread=0;
|
e->kernelwantread=0;
|
||||||
if (!e->canwrite || e->wantwrite) {
|
if (!e->canwrite || e->wantwrite) {
|
||||||
newevents |= POLLOUT;
|
newevents |= POLLOUT;
|
||||||
EV_SET(kev+nkev, n, EVFILT_WRITE, EV_ADD|EV_ENABLE, 0, 0, 0); ++nkev;
|
EV_SET(kev+nkev, y[n].ident, EVFILT_WRITE, EV_ADD|EV_ENABLE, 0, 0, 0); ++nkev;
|
||||||
e->kernelwantwrite=1;
|
e->kernelwantwrite=1;
|
||||||
} else
|
} else
|
||||||
e->kernelwantwrite=0;
|
e->kernelwantwrite=0;
|
||||||
@ -296,7 +296,7 @@ int64 io_waituntil2(int64 milliseconds) {
|
|||||||
if (!e->canread && (y[n].filter&EVFILT_WRITE)) {
|
if (!e->canread && (y[n].filter&EVFILT_WRITE)) {
|
||||||
if (e->canread) {
|
if (e->canread) {
|
||||||
newevents &= ~POLLIN;
|
newevents &= ~POLLIN;
|
||||||
EV_SET(kev+nkev, n, EVFILT_READ, EV_DELETE, 0, 0, 0); ++nkev;
|
EV_SET(kev+nkev, y[n].ident, EVFILT_READ, EV_DELETE, 0, 0, 0); ++nkev;
|
||||||
} else {
|
} else {
|
||||||
e->canread=1;
|
e->canread=1;
|
||||||
if (e->wantread) {
|
if (e->wantread) {
|
||||||
@ -321,7 +321,7 @@ int64 io_waituntil2(int64 milliseconds) {
|
|||||||
* us alone for now. */
|
* us alone for now. */
|
||||||
if (e->canwrite) {
|
if (e->canwrite) {
|
||||||
newevents &= ~POLLOUT;
|
newevents &= ~POLLOUT;
|
||||||
EV_SET(kev+nkev, n, EVFILT_WRITE, EV_DELETE, 0, 0, 0); ++nkev;
|
EV_SET(kev+nkev, y[n].ident, EVFILT_WRITE, EV_DELETE, 0, 0, 0); ++nkev;
|
||||||
e->kernelwantwrite=0;
|
e->kernelwantwrite=0;
|
||||||
} else {
|
} else {
|
||||||
/* If !e->wantwrite: The laziness optimization in
|
/* If !e->wantwrite: The laziness optimization in
|
||||||
|
Loading…
x
Reference in New Issue
Block a user