summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorFlorian Pritz <bluewind@xinu.at>2013-10-19 11:47:11 +0200
committerAllan McRae <allan@archlinux.org>2013-10-31 07:20:02 +0100
commit6405ecb25995e7cb4ec8b4603d6cfed9d58bf22a (patch)
tree5f5074aa6e9c52a03d692a7cba21d061a5f85d81 /src
parent7e767b7e90755f5b8c90b37e68ae14098fba5520 (diff)
downloadpacman-6405ecb25995e7cb4ec8b4603d6cfed9d58bf22a.tar.gz
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>
Diffstat (limited to 'src')
-rw-r--r--src/pacman/package.c7
1 files changed, 5 insertions, 2 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);