X-Git-Url: https://mattmccutchen.net/rsync/rsync.git/blobdiff_plain/860dcf68ad6270ed3d0b9b56bc2cb4a203b28dee..ac669e8b922c7ace230294f9bf9a3a2bdfbd19d2:/flist.c diff --git a/flist.c b/flist.c index a071cdae..142e1ded 100644 --- a/flist.c +++ b/flist.c @@ -1366,7 +1366,7 @@ struct file_list *recv_file_list(int f) flags |= read_byte(f) << 8; file = receive_file_entry(flist, flags, f); - if (S_ISREG(file->mode)) + if (S_ISREG(file->mode) || S_ISLNK(file->mode)) stats.total_size += file->length; flist->files[flist->count++] = file; @@ -1487,8 +1487,8 @@ void clear_file(struct file_struct *file, struct file_list *flist) memset(file, 0, file_struct_len); /* In an empty entry, dir.depth is an offset to the next non-empty * entry. Likewise for length in the opposite direction. We assume - * that we're alone for now since flist_find() will collate adjacent - * items for any entries that are encountered during the find. */ + * that we're alone for now since flist_find() will adjust the counts + * it runs into that aren't up-to-date. */ file->length = file->dir.depth = 1; }