diff options
Diffstat (limited to 'coreutils')
-rw-r--r-- | coreutils/df.c | 2 | ||||
-rw-r--r-- | coreutils/du.c | 21 |
2 files changed, 17 insertions, 6 deletions
diff --git a/coreutils/df.c b/coreutils/df.c index 1f5e4b0..9f8770f 100644 --- a/coreutils/df.c +++ b/coreutils/df.c @@ -31,7 +31,7 @@ extern const char mtab_file[]; /* Defined in utility.c */ #ifdef BB_FEATURE_HUMAN_READABLE -unsigned long disp_hr = KILOBYTE; +static unsigned long disp_hr = KILOBYTE; #endif static int df(char *device, const char *mountPoint) diff --git a/coreutils/du.c b/coreutils/du.c index e6b99a2..36c4de2 100644 --- a/coreutils/du.c +++ b/coreutils/du.c @@ -36,7 +36,7 @@ #ifdef BB_FEATURE_HUMAN_READABLE -unsigned long du_disp_hr = KILOBYTE; +static unsigned long disp_hr = KILOBYTE; #endif typedef void (Display) (long, char *); @@ -48,8 +48,19 @@ static Display *print; static void print_normal(long size, char *filename) { + unsigned long base; #ifdef BB_FEATURE_HUMAN_READABLE - printf("%s\t%s\n", format(size, du_disp_hr), filename); + switch (disp_hr) { + case MEGABYTE: + base = KILOBYTE; + break; + case KILOBYTE: + base = 1; + break; + default: + base = 0; + } +printf("%s\t%s\n", format(size, base), filename); #else printf("%ld\t%s\n", size, filename); #endif @@ -156,8 +167,8 @@ int du_main(int argc, char **argv) count_hardlinks = 1; break; #ifdef BB_FEATURE_HUMAN_READABLE - case 'h': du_disp_hr = 0; break; - case 'm': du_disp_hr = MEGABYTE; break; + case 'h': disp_hr = 0; break; + case 'm': disp_hr = MEGABYTE; break; #endif case 'k': break; default: @@ -185,7 +196,7 @@ int du_main(int argc, char **argv) return status; } -/* $Id: du.c,v 1.40 2001/03/07 03:53:40 andersen Exp $ */ +/* $Id: du.c,v 1.41 2001/03/07 06:04:08 andersen Exp $ */ /* Local Variables: c-file-style: "linux" |