diff options
-rw-r--r-- | tools/js-optimizer.js | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/tools/js-optimizer.js b/tools/js-optimizer.js index 7900044a..76d33f89 100644 --- a/tools/js-optimizer.js +++ b/tools/js-optimizer.js @@ -831,7 +831,9 @@ function simplifyIfs(ast) { if (type === 'if' && !node[3]) { var body = node[2]; // recurse to handle chains - while (body[0] === 'block' && body[1].length === 1) { + while (body[0] === 'block') { + if (body[1].length > 1) body[1] = filterEmptyNodes(body[1]); + if (body[1].length !== 1) break; var singleton = body[1][0]; if (singleton[0] === 'if' && !singleton[3]) { node[1] = ['conditional', node[1], singleton[1], ['num', 0]]; |