aboutsummaryrefslogtreecommitdiff
path: root/src/xz
diff options
context:
space:
mode:
authorJia Tan <jiat0218@gmail.com>2022-11-07 16:24:14 +0200
committerLasse Collin <lasse.collin@tukaani.org>2022-11-07 16:24:56 +0200
commit1fc6e7dd1fabdb60124d449b99273330ccab3ff1 (patch)
tree6a9b505328b575b820be4c7909ce07b82035fc83 /src/xz
parentBuild: Clarify comment in configure.ac about SSE2. (diff)
downloadxz-1fc6e7dd1fabdb60124d449b99273330ccab3ff1.tar.xz
xz: Avoid a compiler warning in progress_speed() in message.c.
This should be smaller too since it avoids the string constants.
Diffstat (limited to '')
-rw-r--r--src/xz/message.c9
1 files changed, 3 insertions, 6 deletions
diff --git a/src/xz/message.c b/src/xz/message.c
index 4e344ea6..be120caf 100644
--- a/src/xz/message.c
+++ b/src/xz/message.c
@@ -355,11 +355,8 @@ progress_speed(uint64_t uncompressed_pos, uint64_t elapsed)
if (elapsed < 3000)
return "";
- static const char unit[][8] = {
- "KiB/s",
- "MiB/s",
- "GiB/s",
- };
+ // The first character of KiB/s, MiB/s, or GiB/s:
+ static const char unit[] = { 'K', 'M', 'G' };
size_t unit_index = 0;
@@ -381,7 +378,7 @@ progress_speed(uint64_t uncompressed_pos, uint64_t elapsed)
// - 999 KiB/s
// Use big enough buffer to hold e.g. a multibyte decimal point.
static char buf[16];
- snprintf(buf, sizeof(buf), "%.*f %s",
+ snprintf(buf, sizeof(buf), "%.*f %ciB/s",
speed > 9.9 ? 0 : 1, speed, unit[unit_index]);
return buf;
}