]> git.ipfire.org Git - thirdparty/ccache.git/commitdiff
Make format_human_readable_size saner for size < 1000
authorJoel Rosdahl <joel@rosdahl.net>
Mon, 13 Feb 2012 19:02:24 +0000 (20:02 +0100)
committerJoel Rosdahl <joel@rosdahl.net>
Mon, 13 Feb 2012 19:02:24 +0000 (20:02 +0100)
test/test_util.c
util.c

index 6668c8649efc62464c1fd08a61de0e22ed2b474f..19c0afe0d9f371f4910599ff4e9b3f7f675f0436 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2011 Joel Rosdahl
+ * Copyright (C) 2010-2012 Joel Rosdahl
  *
  * This program is free software; you can redistribute it and/or modify it
  * under the terms of the GNU General Public License as published by the Free
@@ -96,8 +96,9 @@ TEST(subst_env_in_string)
 
 TEST(format_human_readable_size)
 {
-       CHECK_STR_EQ_FREE2("0", format_human_readable_size(0));
-       CHECK_STR_EQ_FREE2("1 B", format_human_readable_size(1));
+       CHECK_STR_EQ_FREE2("0.0 kB", format_human_readable_size(0));
+       CHECK_STR_EQ_FREE2("0.0 kB", format_human_readable_size(49));
+       CHECK_STR_EQ_FREE2("0.1 kB", format_human_readable_size(50));
        CHECK_STR_EQ_FREE2("42.0 kB", format_human_readable_size(42 * 1000));
        CHECK_STR_EQ_FREE2("1.0 MB", format_human_readable_size(1000 * 1000));
        CHECK_STR_EQ_FREE2("1.2 MB", format_human_readable_size(1234 * 1000));
diff --git a/util.c b/util.c
index 9b4eaef80b8ae428f069b6f01187ca70dd1d8b3c..ef2dbec0f3f3bcb088bcebf0272bb859ec5bc6c5 100644 (file)
--- a/util.c
+++ b/util.c
@@ -858,12 +858,8 @@ format_human_readable_size(uint64_t v)
                s = format("%.1f GB", v/((double)(1000*1000*1000)));
        } else if (v >= 1000*1000) {
                s = format("%.1f MB", v/((double)(1000*1000)));
-       } else if (v >= 1000) {
-               s = format("%.1f kB", v/((double)(1000)));
-       } else if (v > 0) {
-               s = format("%u B", (unsigned)v);
        } else {
-                       s = x_strdup("0");
+               s = format("%.1f kB", v/((double)(1000)));
        }
        return s;
 }