summaryrefslogtreecommitdiffstats
path: root/source/smbd/open.c
diff options
context:
space:
mode:
authorJeremy Allison <jra@samba.org>2006-07-19 05:32:12 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 11:38:14 -0500
commit788aa15ea24e6dfb61820465b5b881829a64297a (patch)
tree4afb97faa31e6dc859cdb37cfbeb45325fa22ef4 /source/smbd/open.c
parentb3b5aec0eef3bdcae75ce79ffd3ecf21fb1279e7 (diff)
downloadsamba-788aa15ea24e6dfb61820465b5b881829a64297a.tar.gz
samba-788aa15ea24e6dfb61820465b5b881829a64297a.tar.xz
samba-788aa15ea24e6dfb61820465b5b881829a64297a.zip
r17131: Optimisation - when doing a stat open don't open the
file unless we really have to (ie. O_CREAT and file doesn't exist). Jeremy.
Diffstat (limited to 'source/smbd/open.c')
-rw-r--r--source/smbd/open.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/source/smbd/open.c b/source/smbd/open.c
index 53178956cdd..4033243888e 100644
--- a/source/smbd/open.c
+++ b/source/smbd/open.c
@@ -245,7 +245,7 @@ static NTSTATUS open_file(files_struct *fsp,
}
if ((access_mask & (FILE_READ_DATA|FILE_WRITE_DATA|FILE_APPEND_DATA|FILE_EXECUTE)) ||
- (local_flags & O_CREAT) ||
+ (!file_existed && (local_flags & O_CREAT)) ||
((local_flags & O_TRUNC) == O_TRUNC) ) {
/*