aboutsummaryrefslogtreecommitdiff
path: root/tools/js-optimizer.js
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2014-06-02 16:12:58 -0700
committerAlon Zakai <alonzakai@gmail.com>2014-06-02 16:12:58 -0700
commitc9823a494a96e2058f391a1778ad199f733c0423 (patch)
treef1bcbe4ab7e0d62112ee31d69c4579296dcbd0d6 /tools/js-optimizer.js
parent2d819db53b19fea02c3fa5dd8100fcb5fa4d1b4f (diff)
fix very large doubles; fixes #2392
Diffstat (limited to 'tools/js-optimizer.js')
-rw-r--r--tools/js-optimizer.js4
1 files changed, 3 insertions, 1 deletions
diff --git a/tools/js-optimizer.js b/tools/js-optimizer.js
index 5b01dae0..989a7932 100644
--- a/tools/js-optimizer.js
+++ b/tools/js-optimizer.js
@@ -5165,7 +5165,9 @@ function prepDotZero(ast) {
function fixDotZero(js) {
return js.replace(/DOT\$ZERO\(([-+]?(0x)?[0-9a-f]*\.?[0-9]+([eE][-+]?[0-9]+)?)\)/g, function(m, num) {
if (num.substr(0, 2) === '0x' || num.substr(0, 3) === '-0x') {
- return eval(num) + '.0';
+ var ret = eval(num).toString();
+ if (ret.indexOf('.') < 0) return ret + '.0';
+ return ret;
}
if (num.indexOf('.') >= 0) return num;
var e = num.indexOf('e');