From 6696fd1c1e94a6b830fe8d1191b85da97bfb10c1 Mon Sep 17 00:00:00 2001 From: Pavel Shilovsky Date: Mon, 31 Jan 2011 14:52:11 -0800 Subject: [PATCH] Ensure we send the direct levelII oplock break to the correct fid. Autobuild-User: Jeremy Allison Autobuild-Date: Tue Feb 1 00:39:56 CET 2011 on sn-devel-104 --- source3/smbd/oplock.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/source3/smbd/oplock.c b/source3/smbd/oplock.c index 31cedc415e3..c3c41d1c339 100644 --- a/source3/smbd/oplock.c +++ b/source3/smbd/oplock.c @@ -839,8 +839,17 @@ static void contend_level2_oplocks_begin_default(files_struct *fsp, */ if (procid_is_me(&share_entry->pid)) { + struct files_struct *cur_fsp = + initial_break_processing(fsp->conn->sconn, + share_entry->id, + share_entry->share_file_id); wait_before_sending_break(); - break_level2_to_none_async(fsp); + if (cur_fsp != NULL) { + break_level2_to_none_async(cur_fsp); + } else { + DEBUG(3, ("release_level_2_oplocks_on_change: " + "Did not find fsp, ignoring\n")); + } } else { messaging_send_buf(fsp->conn->sconn->msg_ctx, share_entry->pid, -- 2.11.4.GIT