X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=progress.c;h=3971f49f4ddaa774806bd1717379a1edd22ba17c;hb=09b90fb3c065ac5ac2ad051596b036131ecedbd5;hp=621c34edc2a3a6a9bceb0f708ed5b0df05145fb5;hpb=011c181cc656c8b3e48882729d1b6238e8c5c537;p=git.git diff --git a/progress.c b/progress.c index 621c34edc..3971f49f4 100644 --- a/progress.c +++ b/progress.c @@ -1,7 +1,7 @@ /* * Simple text-based progress display module for GIT * - * Copyright (c) 2007 by Nicolas Pitre + * Copyright (c) 2007 by Nicolas Pitre * * This code is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 as @@ -131,7 +131,13 @@ static void throughput_string(struct throughput *tp, off_t total, } else { l -= snprintf(tp->display, l, ", %u bytes", (int)total); } - if (rate) + + if (rate > 1 << 10) { + int x = rate + 5; /* for rounding */ + snprintf(tp->display + sizeof(tp->display) - l, l, + " | %u.%2.2u MiB/s", + x >> 10, ((x & ((1 << 10) - 1)) * 100) >> 10); + } else if (rate) snprintf(tp->display + sizeof(tp->display) - l, l, " | %u KiB/s", rate); }