repositories
/
deb_libnfs.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
AROS: We have to provide the correct nfds to WaitSelect
[deb_libnfs.git]
/
aros
/
aros_compat.c
diff --git
a/aros/aros_compat.c
b/aros/aros_compat.c
index 955f8e382d5a5ce176ce1859ea1450c45a0d1e41..6e484f4cad79ab6935b8ec9986667e290a72ce88 100644
(file)
--- a/
aros/aros_compat.c
+++ b/
aros/aros_compat.c
@@
-89,7
+89,7
@@
int aros_poll(struct pollfd *fds, unsigned int nfds, int timo)
{
struct timeval timeout, *toptr;
fd_set ifds, ofds, efds, *ip, *op;
{
struct timeval timeout, *toptr;
fd_set ifds, ofds, efds, *ip, *op;
- unsigned int i;
+ unsigned int i
, maxfd = 0
;
int rc;
// Set up the file-descriptor sets in ifds, ofds and efds.
int rc;
// Set up the file-descriptor sets in ifds, ofds and efds.
@@
-110,6
+110,9
@@
int aros_poll(struct pollfd *fds, unsigned int nfds, int timo)
FD_SET(fds[i].fd, op);
}
FD_SET(fds[i].fd, &efds);
FD_SET(fds[i].fd, op);
}
FD_SET(fds[i].fd, &efds);
+ if (fds[i].fd > maxfd) {
+ maxfd = fds[i].fd;
+ }
}
// Set up the timeval structure for the timeout parameter
}
// Set up the timeval structure for the timeout parameter
@@
-124,7
+127,7
@@
int aros_poll(struct pollfd *fds, unsigned int nfds, int timo)
timeout.tv_usec = (timo - timeout.tv_sec * 1000) * 1000;
}
timeout.tv_usec = (timo - timeout.tv_sec * 1000) * 1000;
}
- rc = WaitSelect(
0
, ip, op, &efds, toptr, NULL);
+ rc = WaitSelect(
maxfd + 1
, ip, op, &efds, toptr, NULL);
if(rc <= 0)
return rc;
if(rc <= 0)
return rc;