s3: Fix bug 7759
authorVolodymyr Khomenko <Volodymyr_Khomenko@dell.com>
Thu, 28 Oct 2010 07:34:05 +0000 (09:34 +0200)
committerVolker Lendecke <vl@samba.org>
Thu, 28 Oct 2010 08:11:29 +0000 (10:11 +0200)
source3/modules/vfs_default.c

index 2cbb84cad0c4f14378937ec8b0d891ac600450d5..6f5b09a5a9c4b248e1b2b38d8e4a2917aab5ca7e 100644 (file)
@@ -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)