(human_readable): Fix bug that rounded 10501 to 10k.
[gnulib.git] / lib / human.c
index a838e8c..285e4fd 100644 (file)
@@ -355,11 +355,9 @@ human_readable (uintmax_t n, char *buf, int opts,
          }
       }
 
-    if (inexact_style == human_ceiling
-       ? 0 < tenths + rounding
-       : inexact_style == human_round_to_nearest
-       ? 5 < tenths + (2 < rounding + (amt & 1))
-       : /* inexact_style == human_floor */ 0)
+    if (inexact_style == human_round_to_nearest
+       ? 5 < tenths + (0 < rounding + (amt & 1))
+       : inexact_style == human_ceiling && 0 < tenths + rounding)
       {
        amt++;