aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorAlex Lam S.L <alexlamsl@gmail.com>2017-03-24 19:31:17 +0800
committerGitHub <noreply@github.com>2017-03-24 19:31:17 +0800
commitac51d4c5a079dccbc9a6cf69d06f757432c69694 (patch)
tree5f121ca645f1704ae3c3190249c04479cbd6e0a5 /lib
parent0432a7abb98f3aec871daa88331aa9223979dde3 (diff)
downloadtracifyjs-ac51d4c5a079dccbc9a6cf69d06f757432c69694.tar.gz
tracifyjs-ac51d4c5a079dccbc9a6cf69d06f757432c69694.zip
fix corner case in `AST_For.init` (#1652)
Enforce `null` as value for empty initialisation blocks. fixes #1648
Diffstat (limited to 'lib')
-rw-r--r--lib/compress.js1
-rw-r--r--lib/output.js2
2 files changed, 2 insertions, 1 deletions
diff --git a/lib/compress.js b/lib/compress.js
index cbcb7b86..3804a932 100644
--- a/lib/compress.js
+++ b/lib/compress.js
@@ -2327,6 +2327,7 @@ merge(Compressor.prototype, {
};
OPT(AST_For, function(self, compressor){
+ if (is_empty(self.init)) self.init = null;
if (!compressor.option("loops")) return self;
if (self.condition) {
var cond = self.condition.evaluate(compressor);
diff --git a/lib/output.js b/lib/output.js
index 767abd4d..c0f10523 100644
--- a/lib/output.js
+++ b/lib/output.js
@@ -799,7 +799,7 @@ function OutputStream(options) {
output.print("for");
output.space();
output.with_parens(function(){
- if (self.init && !(self.init instanceof AST_EmptyStatement)) {
+ if (self.init) {
if (self.init instanceof AST_Definitions) {
self.init.print(output);
} else {