summaryrefslogtreecommitdiff
path: root/source3/smbd/vfs.c
diff options
context:
space:
mode:
authorJeremy Allison <jra@samba.org>2002-01-20 00:04:15 +0000
committerJeremy Allison <jra@samba.org>2002-01-20 00:04:15 +0000
commit427896866af5a0047482ce7a0e8e3b69e9063fb2 (patch)
treee191b72ddbdf17b5a5eafe0f153c8a735c1cb813 /source3/smbd/vfs.c
parent74462c0c17caecf19bc01d5159776ae6a0f39a11 (diff)
downloadsamba-427896866af5a0047482ce7a0e8e3b69e9063fb2.tar.gz
samba-427896866af5a0047482ce7a0e8e3b69e9063fb2.tar.bz2
samba-427896866af5a0047482ce7a0e8e3b69e9063fb2.zip
Attempt to fix bugs in write cache code (yes I know it's going away :-).
Jeremy. (This used to be commit ccda82b457b11ec683f404c9059b02c1214a0fd1)
Diffstat (limited to 'source3/smbd/vfs.c')
-rw-r--r--source3/smbd/vfs.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/source3/smbd/vfs.c b/source3/smbd/vfs.c
index 2396a43d48..e05b217a14 100644
--- a/source3/smbd/vfs.c
+++ b/source3/smbd/vfs.c
@@ -351,6 +351,7 @@ int vfs_allocate_file_space(files_struct *fsp, SMB_OFF_T len)
DEBUG(10,("vfs_allocate_file_space: file %s, shrink. Current size %.0f\n",
fsp->fsp_name, (double)st.st_size ));
+ flush_write_cache(fsp, SIZECHANGE_FLUSH);
if ((ret = vfs_ops->ftruncate(fsp, fsp->fd, len)) != -1) {
set_filelen_write_cache(fsp, len);
}
@@ -389,6 +390,7 @@ int vfs_set_filelen(files_struct *fsp, SMB_OFF_T len)
release_level_2_oplocks_on_change(fsp);
DEBUG(10,("vfs_set_filelen: ftruncate %s to len %.0f\n", fsp->fsp_name, (double)len));
+ flush_write_cache(fsp, SIZECHANGE_FLUSH);
if ((ret = fsp->conn->vfs_ops.ftruncate(fsp, fsp->fd, len)) != -1)
set_filelen_write_cache(fsp, len);