summaryrefslogtreecommitdiff
path: root/rsync.c
diff options
context:
space:
mode:
authorAndrew Tridgell <tridge@samba.org>1997-12-15 22:23:30 +0000
committerAndrew Tridgell <tridge@samba.org>1997-12-15 22:23:30 +0000
commit7c5969064009f1d305ab86e42d924cb3f7acc853 (patch)
tree789de339b97cd2b584372daf3c46ca5ef89bb03f /rsync.c
parent1634f4c4594055f384c81a64fa87870be2f0fe55 (diff)
downloadrsync-7c5969064009f1d305ab86e42d924cb3f7acc853.tar.gz
process directory permissions and times ater hard links becuase the
hard link processing can modify the directory times
Diffstat (limited to 'rsync.c')
-rw-r--r--rsync.c14
1 files changed, 7 insertions, 7 deletions
diff --git a/rsync.c b/rsync.c
index f66efc63..38bbdcde 100644
--- a/rsync.c
+++ b/rsync.c
@@ -729,16 +729,16 @@ int recv_files(int f_in,struct file_list *flist,char *local_name,int f_gen)
}
}
+ if (preserve_hard_links)
+ do_hard_links(flist);
+
/* now we need to fix any directory permissions that were
modified during the transfer */
- if (!am_root) {
- for (i = 0; i < flist->count; i++) {
- struct file_struct *file = &flist->files[i];
- if (!file->name || !S_ISDIR(file->mode)) continue;
- recv_generator(file->name,flist,i,-1);
- }
+ for (i = 0; i < flist->count; i++) {
+ struct file_struct *file = &flist->files[i];
+ if (!file->name || !S_ISDIR(file->mode)) continue;
+ recv_generator(file->name,flist,i,-1);
}
-
if (verbose > 2)
fprintf(FERROR,"recv_files finished\n");