diff options
-rw-r--r-- | source3/smbd/open.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/source3/smbd/open.c b/source3/smbd/open.c index 0e73ba964e..4798563721 100644 --- a/source3/smbd/open.c +++ b/source3/smbd/open.c @@ -2611,10 +2611,6 @@ NTSTATUS create_file(connection_struct *conn, } } - if (req == NULL) { - oplock_request |= INTERNAL_OPEN_ONLY; - } - if ((req != NULL) && (req->flags2 & FLAGS2_DFS_PATHNAMES)) { char *resolved_fname; @@ -2660,6 +2656,10 @@ NTSTATUS create_file(connection_struct *conn, goto fail; } + if (req == NULL) { + oplock_request |= INTERNAL_OPEN_ONLY; + } + /* This is the correct thing to do (check every time) but can_delete * is expensive (it may have to read the parent directory * permissions). So for now we're not doing it unless we have a strong |