summaryrefslogtreecommitdiff
path: root/source4
diff options
context:
space:
mode:
authorAndrew Tridgell <tridge@samba.org>2005-07-01 12:59:23 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 13:19:04 -0500
commit95a9d9aabf1af1faada43ecdfffc68b04f917e4c (patch)
treea997fc4939f4fc4061e5afa960c14849916f1858 /source4
parente7c530a9ea47262a6a984b2318317d30c29d4aa5 (diff)
downloadsamba-95a9d9aabf1af1faada43ecdfffc68b04f917e4c.tar.gz
samba-95a9d9aabf1af1faada43ecdfffc68b04f917e4c.tar.bz2
samba-95a9d9aabf1af1faada43ecdfffc68b04f917e4c.zip
r8059: fixed handling of delete on close fir directories
(This used to be commit 14f51a99bccffac0ca284d1315ab6d4b10f3711f)
Diffstat (limited to 'source4')
-rw-r--r--source4/ntvfs/posix/pvfs_open.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/source4/ntvfs/posix/pvfs_open.c b/source4/ntvfs/posix/pvfs_open.c
index 8dd9689863..f58cc60f9a 100644
--- a/source4/ntvfs/posix/pvfs_open.c
+++ b/source4/ntvfs/posix/pvfs_open.c
@@ -1243,6 +1243,11 @@ NTSTATUS pvfs_change_create_options(struct pvfs_state *pvfs,
return NT_STATUS_CANNOT_DELETE;
}
+ if (f->handle->name->dos.attrib & FILE_ATTRIBUTE_DIRECTORY) {
+ f->handle->create_options = create_options;
+ return NT_STATUS_OK;
+ }
+
lck = odb_lock(req, pvfs->odb_context, &f->handle->odb_locking_key);
if (lck == NULL) {
return NT_STATUS_INTERNAL_DB_CORRUPTION;