summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source3/smbd/blocking.c38
1 files changed, 18 insertions, 20 deletions
diff --git a/source3/smbd/blocking.c b/source3/smbd/blocking.c
index 6428c3684b..6bb73e1b76 100644
--- a/source3/smbd/blocking.c
+++ b/source3/smbd/blocking.c
@@ -587,27 +587,25 @@ void cancel_pending_lock_requests_by_fid(files_struct *fsp, struct byte_range_lo
locktype = CVAL(blr->inbuf,smb_vwv3);
}
- if (br_lck) {
- DEBUG(10, ("remove_pending_lock_requests_by_fid - "
- "removing request type %d for file %s fnum "
- "= %d\n", blr->com_type, fsp->fsp_name,
- fsp->fnum));
+ DEBUG(10, ("remove_pending_lock_requests_by_fid - removing "
+ "request type %d for file %s fnum = %d\n",
+ blr->com_type, fsp->fsp_name, fsp->fnum));
+
+ brl_lock_cancel(br_lck,
+ blr->lock_pid,
+ procid_self(),
+ blr->offset,
+ blr->count,
+ blr->lock_flav);
+
+ blocking_lock_cancel(fsp,
+ blr->lock_pid,
+ blr->offset,
+ blr->count,
+ blr->lock_flav,
+ locktype,
+ NT_STATUS_RANGE_NOT_LOCKED);
- brl_lock_cancel(br_lck,
- blr->lock_pid,
- procid_self(),
- blr->offset,
- blr->count,
- blr->lock_flav);
-
- blocking_lock_cancel(fsp,
- blr->lock_pid,
- blr->offset,
- blr->count,
- blr->lock_flav,
- locktype,
- NT_STATUS_RANGE_NOT_LOCKED);
- }
/* We're closing the file fsp here, so ensure
* we don't have a dangling pointer. */
blr->fsp = NULL;