diff --git a/main.c b/main.c index 6936894..4be2c9e 100644 --- a/main.c +++ b/main.c @@ -3950,14 +3950,18 @@ ovl_setattr (fuse_req_t req, fuse_ino_t ino, struct stat *attr, int to_set, stru times[0].tv_nsec = UTIME_OMIT; times[1].tv_nsec = UTIME_OMIT; if (to_set & FUSE_SET_ATTR_ATIME) - times[0] = attr->st_atim; - else if (to_set & FUSE_SET_ATTR_ATIME_NOW) - times[0].tv_nsec = UTIME_NOW; + { + times[0] = attr->st_atim; + if (to_set & FUSE_SET_ATTR_ATIME_NOW) + times[0].tv_nsec = UTIME_NOW; + } if (to_set & FUSE_SET_ATTR_MTIME) - times[1] = attr->st_mtim; - else if (to_set & FUSE_SET_ATTR_MTIME_NOW) - times[1].tv_nsec = UTIME_NOW; + { + times[1] = attr->st_mtim; + if (to_set & FUSE_SET_ATTR_MTIME_NOW) + times[1].tv_nsec = UTIME_NOW; + } if (times[0].tv_nsec != UTIME_OMIT || times[1].tv_nsec != UTIME_OMIT) {