X-Git-Url: https://mattmccutchen.net/rsync/rsync.git/blobdiff_plain/d27cbec598136ff8ff767ebbfb5d9d39e0b7c03e..b4235b3165fda2c09072ed830de9a13db5e81b41:/flist.c diff --git a/flist.c b/flist.c index 151ae876..3d0ff535 100644 --- a/flist.c +++ b/flist.c @@ -101,12 +101,13 @@ static void finish_filelist_progress(const struct file_list *flist) { if (do_progress) { /* This overwrites the progress line */ - rprintf(FINFO, "%d files to consider\n", flist->count); - } else + rprintf(FINFO, "%d file%sto consider\n", + flist->count, flist->count == 1 ? " " : "s "); + } else { rprintf(FINFO, "done\n"); + } } - void show_flist_stats(void) { /* Nothing yet */ @@ -191,6 +192,13 @@ static void list_file_entry(struct file_struct *f) } +/** + * Stat either a symlink or its referent, depending on the settings of + * copy_links, copy_unsafe_links, etc. + * + * @return -1 on error; or 0. If a symlink, then @p Linkbuf (of size + * MAXPATHLEN) contains the symlink target. + **/ int readlink_stat(const char *Path, STRUCT_STAT * Buffer, char *Linkbuf) { #if SUPPORT_LINKS @@ -987,8 +995,9 @@ struct file_list *send_file_list(int f, int argc, char *argv[]) send_file_entry(NULL, f, 0); } - if (show_filelist_p()) + if (show_filelist_p() && f != -1) { finish_filelist_progress(flist); + } clean_flist(flist, 0);