summaryrefslogtreecommitdiff
path: root/index-pack.c
diff options
context:
space:
mode:
authorNicolas Pitre <nico@cam.org>2007-11-05 03:15:41 (GMT)
committerJunio C Hamano <gitster@pobox.com>2007-11-05 20:53:14 (GMT)
commit218558af599c01e5dec17a7399d9188a76c50203 (patch)
tree4cbbbc442f76653aec103c4e7c1d62763fe5e5e2 /index-pack.c
parent0d8aafd25271c8d1cf185019437e21362edc1bc7 (diff)
downloadgit-218558af599c01e5dec17a7399d9188a76c50203.zip
git-218558af599c01e5dec17a7399d9188a76c50203.tar.gz
git-218558af599c01e5dec17a7399d9188a76c50203.tar.bz2
make display of total transferred more accurate
The throughput display needs a delay period before accounting and displaying anything. Yet it might be called after some amount of data has already been transferred. The display of total data is therefore accounted late and therefore smaller than the reality. Let's call display_throughput() with an absolute amount of transferred data instead of a relative number, and let the throughput code find the relative amount of data by itself as needed. This way the displayed total is always exact. Signed-off-by: Nicolas Pitre <nico@cam.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'index-pack.c')
-rw-r--r--index-pack.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/index-pack.c b/index-pack.c
index 715a5bb..581a7f5 100644
--- a/index-pack.c
+++ b/index-pack.c
@@ -87,9 +87,9 @@ static void *fill(int min)
die("early EOF");
die("read error on input: %s", strerror(errno));
}
- if (from_stdin)
- display_throughput(progress, ret);
input_len += ret;
+ if (from_stdin)
+ display_throughput(progress, consumed_bytes + input_len);
} while (input_len < min);
return input_buffer;
}