* fhandler.cc (fhandler_base::fstat): Initialise tv_nsec member of
st_atim, st_mtim, and st_ctim fields. * fhandler_disk_file.cc (fhandler_disk_file::fstat_helper): Ditto. * fhandler_process.cc (fhandler_process::fstat): Ditto. * glob.c (stat32_to_STAT): Copy across the whole st_atim, st_mtime, and st_ctim fields. * syscalls.cc (stat64_to_stat32): Ditto. * times.cc (to_timestruc_t): New function. (time_as_timestruc_t): New function. * winsup.h: Add to_timestruc_t and time_as_timestruc_t functions. * include/cygwin/stat.h: Replace time_t with timestruc_t throughout for all file times, removing the st_spare1, st_spare2, and st_spare3 fields in the process. Add macros to access tv_sec fields by old names. * include/cygwin/types.h: Typedef timespec_t and timestruc_t as struct timespec.
This commit is contained in:
@ -121,7 +121,8 @@ fhandler_process::fstat (struct __stat64 *buf, path_conv *pc)
|
||||
return 0;
|
||||
case 2:
|
||||
buf->st_ctime = buf->st_mtime = p->start_time;
|
||||
buf->st_atime = time(NULL);
|
||||
buf->st_ctim.tv_nsec = buf->st_mtim.tv_nsec = 0;
|
||||
time_as_timestruc_t(&buf->st_atim);
|
||||
buf->st_uid = p->uid;
|
||||
buf->st_gid = p->gid;
|
||||
buf->st_mode |= S_IFDIR | S_IXUSR | S_IXGRP | S_IXOTH;
|
||||
|
Reference in New Issue
Block a user