diff options
author | Florian Pritz <bluewind@xinu.at> | 2013-10-19 11:47:11 +0200 |
---|---|---|
committer | Allan McRae <allan@archlinux.org> | 2013-10-31 16:20:02 +1000 |
commit | 6405ecb25995e7cb4ec8b4603d6cfed9d58bf22a (patch) | |
tree | 5f5074aa6e9c52a03d692a7cba21d061a5f85d81 | |
parent | 7e767b7e90755f5b8c90b37e68ae14098fba5520 (diff) | |
download | pacman-6405ecb25995e7cb4ec8b4603d6cfed9d58bf22a.tar.xz |
pacman -Si/-Qi: Autodetect best fitting file size unit
I've tracked this back to e223366 and it looks like this just forces KiB
because back then humanize_size didn't exist, but the size was just
divided by 1024 to keep it somewhat readable. When humanize_size got
introduced in 3c8a448 this was just carried over.
The unit detected for "Download Size" is reused for "Installed Size" to
make it easier to read.
Signed-off-by: Florian Pritz <bluewind@xinu.at>
Signed-off-by: Allan McRae <allan@archlinux.org>
-rw-r--r-- | src/pacman/package.c | 7 | ||||
-rw-r--r-- | test/pacman/tests/query006.py | 2 |
2 files changed, 6 insertions, 3 deletions
diff --git a/src/pacman/package.c b/src/pacman/package.c index 349946fb..78bfb504 100644 --- a/src/pacman/package.c +++ b/src/pacman/package.c @@ -165,16 +165,19 @@ void dump_pkg_full(alpm_pkg_t *pkg, int extra) deplist_display(_("Conflicts With :"), alpm_pkg_get_conflicts(pkg), cols); deplist_display(_("Replaces :"), alpm_pkg_get_replaces(pkg), cols); - size = humanize_size(alpm_pkg_get_size(pkg), 'K', 2, &label); + size = humanize_size(alpm_pkg_get_size(pkg), '\0', 2, &label); if(from == ALPM_PKG_FROM_SYNCDB) { printf("%s%s%s %6.2f %s\n", config->colstr.title, _("Download Size :"), config->colstr.nocolor, size, label); } else if(from == ALPM_PKG_FROM_FILE) { printf("%s%s%s %6.2f %s\n", config->colstr.title, _("Compressed Size:"), config->colstr.nocolor, size, label); + } else { + // autodetect size for "Installed Size" + label = "\0"; } - size = humanize_size(alpm_pkg_get_isize(pkg), 'K', 2, &label); + size = humanize_size(alpm_pkg_get_isize(pkg), label[0], 2, &label); printf("%s%s%s %6.2f %s\n", config->colstr.title, _("Installed Size :"), config->colstr.nocolor, size, label); diff --git a/test/pacman/tests/query006.py b/test/pacman/tests/query006.py index 0f6f762b..5defd877 100644 --- a/test/pacman/tests/query006.py +++ b/test/pacman/tests/query006.py @@ -20,7 +20,7 @@ self.args = "-Qi %s" % p.name self.addrule("PACMAN_RETCODE=0") self.addrule("PACMAN_OUTPUT=^Name.*%s" % p.name) self.addrule("PACMAN_OUTPUT=^Description.*%s" % p.desc) -self.addrule("PACMAN_OUTPUT=^Installed Size.*9765625.00 KiB") +self.addrule("PACMAN_OUTPUT=^Installed Size.*9.31 GiB") self.addrule("PACMAN_OUTPUT=^Build Date.* 2065") self.addrule("PACMAN_OUTPUT=^Install Date.* 2286") |