- if (itemizing && (verbose > 1 || stdout_format_has_i > 1)) {
-@@ -1793,7 +1799,7 @@ static void touch_up_dirs(struct file_li
- if (!(file->mode & S_IWUSR))
- do_chmod(fname, file->mode);
- if (need_retouch_dir_times)
-- set_modtime(fname, file->modtime, file->mode);
-+ set_times(fname, file->modtime, file->modtime, file->mode);
+ if (!maybe_ATTRS_REPORT && (verbose > 1 || stdout_format_has_i > 1)) {
+@@ -1187,6 +1193,7 @@ static int try_dests_non(struct file_struct *file, char *fname, int ndx,
+ static void list_file_entry(struct file_struct *f)
+ {
+ char permbuf[PERMSTRING_SIZE];
++ time_t atime = atimes_ndx ? f_atime(f) : 0;
+ double len;
+
+ if (!F_IS_ACTIVE(f)) {
+@@ -1201,14 +1208,16 @@ static void list_file_entry(struct file_struct *f)
+
+ #ifdef SUPPORT_LINKS
+ if (preserve_links && S_ISLNK(f->mode)) {
+- rprintf(FINFO, "%s %11.0f %s %s -> %s\n",
++ rprintf(FINFO, "%s %11.0f %s %s %s -> %s\n",
+ permbuf, len, timestring(f->modtime),
++ atimes_ndx ? timestring(atime) : "",
+ f_name(f, NULL), F_SYMLINK(f));
+ } else
+ #endif
+ {
+- rprintf(FINFO, "%s %11.0f %s %s\n",
++ rprintf(FINFO, "%s %11.0f %s %s %s\n",
+ permbuf, len, timestring(f->modtime),
++ atimes_ndx ? timestring(atime) : "",
+ f_name(f, NULL));
+ }
+ }
+@@ -2029,7 +2038,7 @@ static void touch_up_dirs(struct file_list *flist, int ndx)
+ STRUCT_STAT st;
+ if (link_stat(fname, &st, 0) == 0
+ && cmp_time(st.st_mtime, file->modtime) != 0)
+- set_modtime(fname, file->modtime, file->mode);
++ set_times(fname, file->modtime, file->modtime, file->mode);
+ }