summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source3/smbd/oplock_irix.c16
1 files changed, 6 insertions, 10 deletions
diff --git a/source3/smbd/oplock_irix.c b/source3/smbd/oplock_irix.c
index 29bbb0f2ca..fa86211c7f 100644
--- a/source3/smbd/oplock_irix.c
+++ b/source3/smbd/oplock_irix.c
@@ -94,7 +94,7 @@ static files_struct *irix_oplock_receive_message(fd_set *fds)
files_struct *fsp;
/* Ensure we only get one call per select fd set. */
- FD_CLR(fds, oplock_pipe_read);
+ FD_CLR(oplock_pipe_read, fds);
/*
* Read one byte of zero to clear the
@@ -220,22 +220,18 @@ static BOOL irix_oplock_msg_waiting(fd_set *fds)
return False;
if (fds) {
- return FD_ISSET(oplock_pipe_read,fds);
- }
-
- FD_ZERO(&myfds);
- maxfd = setup_oplock_select_set(&myfds);
- /* Only do the select if we have something to select *on*. */
- if (maxfd == 0) {
- return False;
+ return FD_ISSET(oplock_pipe_read, fds);
}
/* Do a zero-time select. We just need to find out if there
* are any outstanding messages. We use sys_select_intr as
* we need to ignore any signals. */
+ FD_ZERO(&myfds);
+ FD_SET(oplock_pipe_read, &myfds);
+
to = timeval_set(0, 0);
- selrtn = sys_select_intr(maxfd+1,&myfds,NULL,NULL,&to);
+ selrtn = sys_select_intr(oplock_pipe_read+1,&myfds,NULL,NULL,&to);
return (selrtn == 1) ? True : False;
}