]> git.eshelyaron.com Git - emacs.git/commitdiff
Fix formatting of (file-size-human-readable 2047)
authorLars Ingebrigtsen <larsi@gnus.org>
Wed, 9 Oct 2019 23:57:54 +0000 (01:57 +0200)
committerLars Ingebrigtsen <larsi@gnus.org>
Wed, 9 Oct 2019 23:57:54 +0000 (01:57 +0200)
* lisp/files.el (file-size-human-readable): Don't format
slightly-less numbers as X.0k, but just Xk instead (bug#36329).

lisp/files.el
test/lisp/files-tests.el

index fdd7c75ced655c1963ea23db2ee2d819f0aeaf0c..a1c7e3c8144fd2ea89b6fb8d9fb5a9242855e2df 100644 (file)
@@ -1419,7 +1419,8 @@ in all cases, since that is the standard symbol for byte."
                                (if (string= prefix "") "" "i")
                                (or unit "B"))
                             (concat prefix unit))))
-      (format (if (> (mod file-size 1.0) 0.05)
+      (format (if (and (>= (mod file-size 1.0) 0.05)
+                       (< (mod file-size 1.0) 0.95))
                  "%.1f%s%s"
                "%.0f%s%s")
              file-size
index ed23f7675ccf1d8e3fe63866e78fb3b172045ff0..60387e1ab2e75d045f18659825bf83d51950d61e 100644 (file)
@@ -1282,6 +1282,12 @@ renaming only, rather than modified in-place."
   (should (equal (file-size-human-readable 10000 'si " " "bit") "10 kbit"))
   (should (equal (file-size-human-readable 10000 'iec " " "bit") "9.8 Kibit"))
 
+  (should (equal (file-size-human-readable 2048) "2k"))
+  (should (equal (file-size-human-readable 2046) "2k"))
+  (should (equal (file-size-human-readable 2050) "2k"))
+  (should (equal (file-size-human-readable 1950) "1.9k"))
+  (should (equal (file-size-human-readable 2100) "2.1k"))
+
   (should (equal (file-size-human-readable-iec 0) "0 B"))
   (should (equal (file-size-human-readable-iec 1) "1 B"))
   (should (equal (file-size-human-readable-iec 9621) "9.4 KiB"))