diff options
author | Jeremy Allison <jra@samba.org> | 2002-05-22 23:34:47 +0000 |
---|---|---|
committer | Jeremy Allison <jra@samba.org> | 2002-05-22 23:34:47 +0000 |
commit | a3c98a841bcedf72ce513917707b5799c37abb95 (patch) | |
tree | e8e703d58f0537c8a12c410ba655a48ced04a8fd /source3/smbd/oplock.c | |
parent | 8955286b321db3b3283e99706cf294f191cdcc78 (diff) | |
download | samba-a3c98a841bcedf72ce513917707b5799c37abb95.tar.gz samba-a3c98a841bcedf72ce513917707b5799c37abb95.tar.bz2 samba-a3c98a841bcedf72ce513917707b5799c37abb95.zip |
Merge of bugfixes from 2.2.
Jeremy.
(This used to be commit 5c8351228c55f2403214351f6fd16fe231aee917)
Diffstat (limited to 'source3/smbd/oplock.c')
-rw-r--r-- | source3/smbd/oplock.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/source3/smbd/oplock.c b/source3/smbd/oplock.c index 6a47791300..9bc7d64381 100644 --- a/source3/smbd/oplock.c +++ b/source3/smbd/oplock.c @@ -99,6 +99,11 @@ BOOL receive_local_message( char *buffer, int buffer_len, int timeout) if (selrtn == -1 && errno == EINTR) { + /* could be a kernel oplock interrupt */ + if (koplocks && koplocks->msg_waiting(&fds)) { + return koplocks->receive_message(&fds, buffer, buffer_len); + } + /* * Linux 2.0.x seems to have a bug in that * it can return -1, EINTR with a timeout of zero. @@ -111,11 +116,6 @@ BOOL receive_local_message( char *buffer, int buffer_len, int timeout) return False; } - - /* could be a kernel oplock interrupt */ - if (koplocks && koplocks->msg_waiting(&fds)) { - return koplocks->receive_message(&fds, buffer, buffer_len); - } /* Not a kernel interrupt - could be a SIGUSR1 message. We must restart. */ /* We need to decrement the timeout here. */ timeout -= ((time(NULL) - starttime)*1000); |