goto try_a_copy;
+ if (preserve_atimes)
+ set_file_attrs(fname, file, stp, 0);
- if (preserve_hard_links && file->link_u.links)
- hard_link_cluster(file, ndx, itemizing, code);
- } else
-@@ -934,7 +941,7 @@ static void recv_generator(char *fname,
+ if (preserve_hard_links && file->link_u.links) {
+ if (dry_run)
+ file->link_u.links->link_dest_used = j + 1;
+@@ -937,7 +944,7 @@ static void recv_generator(char *fname,
&& verbose && code && f_out != -1)
rprintf(code, "%s/\n", fname);
if (delete_during && f_out != -1 && !phase && dry_run < 2
delete_in_dir(the_file_list, fname, file, &st);
return;
}
-@@ -1237,7 +1244,7 @@ static void recv_generator(char *fname,
+@@ -1240,7 +1247,7 @@ static void recv_generator(char *fname,
if (fuzzy_dirlist) {
int j = flist_find(fuzzy_dirlist, file);
if (j >= 0) /* don't use changing file as future fuzzy basis */
head = hlink_list[file->F_HLINDEX] = file->F_NEXT;
else
head = hlink_list[file->F_HLINDEX];
-@@ -279,8 +280,8 @@ void hard_link_cluster(struct file_struc
+@@ -285,8 +286,8 @@ void hard_link_cluster(struct file_struc
file->F_HLINDEX = FINISHED_LINK;
if (link_stat(f_name(file, hlink1), &st1, 0) < 0)
return;
ndx = file->F_NEXT;
file = FPTR(ndx);
}
-@@ -300,6 +301,6 @@ void hard_link_cluster(struct file_struc
+@@ -306,6 +307,6 @@ void hard_link_cluster(struct file_struc
send_msg(MSG_SUCCESS, numbuf, 4);
}
file->F_HLINDEX = FINISHED_LINK;
#define FULL_FLUSH 1
#define NORMAL_FLUSH 0
-@@ -529,9 +531,12 @@ struct file_struct {
+@@ -530,9 +532,12 @@ struct file_struct {
uid_t uid;
gid_t gid;
mode_t mode;