- time_t last_access_t = (tv[0].tv_nsec == UTIME_NOW) ?
- time(NULL) : tv[0].tv_sec;
- dentry->last_access_time = unix_timestamp_to_ms(last_access_t);
- time_t last_mod_t = (tv[1].tv_nsec == UTIME_NOW) ?
- time(NULL) : tv[1].tv_sec;
- dentry->last_write_time = unix_timestamp_to_ms(last_mod_t);
+ if (tv[0].tv_nsec != UTIME_OMIT) {
+ if (tv[0].tv_nsec == UTIME_NOW)
+ dentry->last_access_time = get_wim_timestamp();
+ else
+ dentry->last_access_time = timespec_to_wim_timestamp(&tv[0]);
+ }
+ if (tv[1].tv_nsec != UTIME_OMIT) {
+ if (tv[1].tv_nsec == UTIME_NOW)
+ dentry->last_write_time = get_wim_timestamp();
+ else
+ dentry->last_write_time = timespec_to_wim_timestamp(&tv[1]);
+ }