[SCM] The rsync repository. - branch master updated
Rsync CVS commit messages
rsync-cvs at lists.samba.org
Mon Feb 24 11:07:33 MST 2014
The branch, master has been updated
via cd909fd Fix --info=progress2 info as a file is transferred.
from 4dfe7c9 Improve the *.spec file a bit.
;a=shortlog;h=master
- Log -----------------------------------------------------------------
commit cd909fde87b75ce7f75b9b7e8733d9133cde3ae9
Author: Wayne Davison <wayned at samba.org>
Date: Mon Feb 24 09:49:04 2014 -0800
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.
-----------------------------------------------------------------------
Summary of changes:
NEWS | 5 +++++
progress.c | 11 ++++++-----
2 files changed, 11 insertions(+), 5 deletions(-)
Changeset truncated at 500 lines:
diff --git a/NEWS b/NEWS
index dc1df78..e1f5412 100644
--- a/NEWS
+++ b/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
diff --git a/progress.c b/progress.c
index 8fade9c..318a77f 100644
--- a/progress.c
+++ b/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);
}
--
The rsync repository.
More information about the rsync-cvs
mailing list