mirror of
https://github.com/samba-team/samba.git
synced 2024-12-24 21:34:56 +03:00
r23151: Re-arrange the logic so it looks identical to the
"file existed" case above. This has no functional
change but is easier to see that it's doing the
same thing.
Jeremy.
(This used to be commit 0a7d8362be
)
This commit is contained in:
parent
4c795b293d
commit
f3de07503a
@ -1663,6 +1663,20 @@ NTSTATUS open_file_ntcreate(connection_struct *conn,
|
||||
access_mask, share_access,
|
||||
create_options, &file_existed);
|
||||
|
||||
if (NT_STATUS_IS_OK(status)) {
|
||||
/* We might be going to allow this open. Check oplock
|
||||
* status again. */
|
||||
/* Second pass - send break for both batch or
|
||||
* exclusive oplocks. */
|
||||
if (delay_for_oplocks(lck, fsp, 2, oplock_request)) {
|
||||
schedule_defer_open(lck, request_time);
|
||||
TALLOC_FREE(lck);
|
||||
fd_close(conn, fsp);
|
||||
file_free(fsp);
|
||||
return NT_STATUS_SHARING_VIOLATION;
|
||||
}
|
||||
}
|
||||
|
||||
if (!NT_STATUS_IS_OK(status)) {
|
||||
struct deferred_open_record state;
|
||||
|
||||
@ -1686,14 +1700,6 @@ NTSTATUS open_file_ntcreate(connection_struct *conn,
|
||||
return status;
|
||||
}
|
||||
|
||||
if (delay_for_oplocks(lck, fsp, 2, oplock_request)) {
|
||||
schedule_defer_open(lck, request_time);
|
||||
TALLOC_FREE(lck);
|
||||
fd_close(conn, fsp);
|
||||
file_free(fsp);
|
||||
return NT_STATUS_SHARING_VIOLATION;
|
||||
}
|
||||
|
||||
/*
|
||||
* We exit this block with the share entry *locked*.....
|
||||
*/
|
||||
|
Loading…
Reference in New Issue
Block a user