Fix --info=progress2 info as a file is transferred.
Applying Anish Shankar's patch to fix speed and stats of files as they are transferred. Fixes bug 10450.
This commit is contained in:
5
NEWS
5
NEWS
@@ -31,6 +31,11 @@ Changes since 3.1.0:
|
||||
- Fixed a bug that caused a failure when combining --delete-missing-args
|
||||
with --xattrs and/or --acls.
|
||||
|
||||
- Fixed a problem with --info=progress2's output stats where rsync would
|
||||
only update the stats at the end of each file's transfer. It now uses
|
||||
the data that is flowing for the current file, making the stats more
|
||||
accurate and less jumpy.
|
||||
|
||||
- Fixed an itemize bug that affected the combo of --link-dest, -X, and -n.
|
||||
|
||||
- Fixed a problem with delete messages not appearing in the log file when
|
||||
|
||||
11
progress.c
11
progress.c
@@ -177,6 +177,11 @@ void show_progress(OFF_T ofs, OFF_T size)
|
||||
|
||||
gettimeofday(&now, NULL);
|
||||
|
||||
if (INFO_GTE(PROGRESS, 2)) {
|
||||
ofs = stats.total_transferred_size - size + ofs;
|
||||
size = stats.total_size;
|
||||
}
|
||||
|
||||
if (!ph_start.time.tv_sec) {
|
||||
int i;
|
||||
|
||||
@@ -212,9 +217,5 @@ void show_progress(OFF_T ofs, OFF_T size)
|
||||
return;
|
||||
#endif
|
||||
|
||||
if (INFO_GTE(PROGRESS, 2)) {
|
||||
rprint_progress(stats.total_transferred_size,
|
||||
stats.total_size, &now, False);
|
||||
} else
|
||||
rprint_progress(ofs, size, &now, False);
|
||||
rprint_progress(ofs, size, &now, False);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user