Skip to content

Commit b326ec5

Browse files
committed
Fixing case where rounding results in the wrong exponent, fixes #103
1 parent 5b362af commit b326ec5

10 files changed

+83
-71
lines changed

lib/filesize.es6.js

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
*
44
* @copyright 2019 Jason Mulligan <[email protected]>
55
* @license BSD-3-Clause
6-
* @version 4.2.0
6+
* @version 4.2.1
77
*/
88
(function (global) {
99
const b = /^(b|B)$/,
@@ -97,6 +97,12 @@
9797
}
9898

9999
result[0] = Number(val.toFixed(e > 0 ? round : 0));
100+
101+
if (result[0] === ceil && e < 8 && descriptor.exponent === void 0) {
102+
result[0] = 1;
103+
e++;
104+
}
105+
100106
result[1] = base === 10 && e === 1 ? bits ? "kb" : "kB" : symbol[standard][bits ? "bits" : "bytes"][e];
101107

102108
if (unix) {

lib/filesize.es6.min.js

Lines changed: 3 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

lib/filesize.es6.min.js.map

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

lib/filesize.js

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
*
66
* @copyright 2019 Jason Mulligan <[email protected]>
77
* @license BSD-3-Clause
8-
* @version 4.2.0
8+
* @version 4.2.1
99
*/
1010
(function (global) {
1111
var b = /^(b|B)$/,
@@ -115,6 +115,12 @@
115115
}
116116

117117
result[0] = Number(val.toFixed(e > 0 ? round : 0));
118+
119+
if (result[0] === ceil && e < 8 && descriptor.exponent === void 0) {
120+
result[0] = 1;
121+
e++;
122+
}
123+
118124
result[1] = base === 10 && e === 1 ? bits ? "kb" : "kB" : symbol[standard][bits ? "bits" : "bytes"][e];
119125

120126
if (unix) {

lib/filesize.min.js

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

lib/filesize.min.js.map

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)