aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/libbb.h3
-rw-r--r--libbb/human_readable.c7
2 files changed, 5 insertions, 5 deletions
diff --git a/include/libbb.h b/include/libbb.h
index 750e0bb4f..a6d9a510b 100644
--- a/include/libbb.h
+++ b/include/libbb.h
@@ -267,7 +267,8 @@ enum {
MEGABYTE = (KILOBYTE*1024),
GIGABYTE = (MEGABYTE*1024)
};
-const char *make_human_readable_str(unsigned long size, unsigned long block_size, unsigned long display_unit);
+const char *make_human_readable_str(unsigned long long size,
+ unsigned long block_size, unsigned long display_unit);
int bb_ask_confirmation(void);
int klogctl(int type, char * b, int len);
diff --git a/libbb/human_readable.c b/libbb/human_readable.c
index 7bdad36a9..656889150 100644
--- a/libbb/human_readable.c
+++ b/libbb/human_readable.c
@@ -28,9 +28,8 @@
#include <stdio.h>
#include "libbb.h"
-const char *make_human_readable_str(unsigned long size,
- unsigned long block_size,
- unsigned long display_unit)
+const char *make_human_readable_str(unsigned long long size,
+ unsigned long block_size, unsigned long display_unit)
{
/* The code will adjust for additional (appended) units. */
static const char zero_and_units[] = { '0', 0, 'k', 'M', 'G', 'T' };
@@ -48,7 +47,7 @@ const char *make_human_readable_str(unsigned long size,
f = fmt;
frac = 0;
- val = ((unsigned long long) size) * block_size;
+ val = size * block_size;
if (val == 0) {
return u;
}