From d2d716483aa69927541a0a29f3c1ee3c7bba30b4 Mon Sep 17 00:00:00 2001 From: Mihai Bazon Date: Tue, 6 Jan 2015 13:57:18 +0200 Subject: aborts(AST_If) returns the `if` node Previously it returned the abort node from the alternative branch. This is not much use as it can be different from the one in the body branch (i.e. return vs. throw) and can trick us into issues like #591. Fix #591 --- lib/compress.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/compress.js b/lib/compress.js index 345d8ad6..83c3e6d0 100644 --- a/lib/compress.js +++ b/lib/compress.js @@ -950,7 +950,7 @@ merge(Compressor.prototype, { def(AST_BlockStatement, block_aborts); def(AST_SwitchBranch, block_aborts); def(AST_If, function(){ - return this.alternative && aborts(this.body) && aborts(this.alternative); + return this.alternative && aborts(this.body) && aborts(this.alternative) && this; }); })(function(node, func){ node.DEFMETHOD("aborts", func); -- cgit v1.2.3