aboutsummaryrefslogtreecommitdiff
path: root/toys/posix/du.c
diff options
context:
space:
mode:
Diffstat (limited to 'toys/posix/du.c')
-rw-r--r--toys/posix/du.c14
1 files changed, 2 insertions, 12 deletions
diff --git a/toys/posix/du.c b/toys/posix/du.c
index 96922bca..64ba0517 100644
--- a/toys/posix/du.c
+++ b/toys/posix/du.c
@@ -54,18 +54,8 @@ static void print(long long size, struct dirtree *node)
if (TT.maxdepth && TT.depth > TT.maxdepth) return;
- if (toys.optflags & FLAG_h) {
- char buf[32];
- int index, sz;
-
- for (index = 0; 1024 < size>>(10*index); index++);
- sz = size>>(10*index);
- if (sz < 10) {
- sprintf(buf, "%llu", size>>(10*(index-1)));
- printf("%c.%c", buf[0], buf[1]);
- } else printf("%d", sz);
- if (index) printf("%c", " KMGTPE"[index]);
- } else {
+ if (toys.optflags & FLAG_h) printf("%s", human_readable(size));
+ else {
int bits = 10;
if (toys.optflags & FLAG_K) bits = 9;