summaryrefslogtreecommitdiff
path: root/source3/modules/vfs_default.c
diff options
context:
space:
mode:
Diffstat (limited to 'source3/modules/vfs_default.c')
-rw-r--r--source3/modules/vfs_default.c34
1 files changed, 18 insertions, 16 deletions
diff --git a/source3/modules/vfs_default.c b/source3/modules/vfs_default.c
index 2cbb84cad0..6f5b09a5a9 100644
--- a/source3/modules/vfs_default.c
+++ b/source3/modules/vfs_default.c
@@ -754,25 +754,27 @@ static int vfswrap_ntimes(vfs_handle_struct *handle,
goto out;
}
- if (null_timespec(ft->atime)) {
- ft->atime= smb_fname->st.st_ex_atime;
- }
+ if (ft != NULL) {
+ if (null_timespec(ft->atime)) {
+ ft->atime= smb_fname->st.st_ex_atime;
+ }
- if (null_timespec(ft->mtime)) {
- ft->mtime = smb_fname->st.st_ex_mtime;
- }
+ if (null_timespec(ft->mtime)) {
+ ft->mtime = smb_fname->st.st_ex_mtime;
+ }
- if (!null_timespec(ft->create_time)) {
- set_create_timespec_ea(handle->conn,
- smb_fname,
- ft->create_time);
- }
+ if (!null_timespec(ft->create_time)) {
+ set_create_timespec_ea(handle->conn,
+ smb_fname,
+ ft->create_time);
+ }
- if ((timespec_compare(&ft->atime,
- &smb_fname->st.st_ex_atime) == 0) &&
- (timespec_compare(&ft->mtime,
- &smb_fname->st.st_ex_mtime) == 0)) {
- return 0;
+ if ((timespec_compare(&ft->atime,
+ &smb_fname->st.st_ex_atime) == 0) &&
+ (timespec_compare(&ft->mtime,
+ &smb_fname->st.st_ex_mtime) == 0)) {
+ return 0;
+ }
}
#if defined(HAVE_UTIMENSAT)