From 63287c0e681154698a2aeb73380ea9b40260c6b0 Mon Sep 17 00:00:00 2001 From: Mihai Bazon Date: Wed, 30 Oct 2013 13:59:59 +0200 Subject: [PATCH] Workaround for Safari bug Close #313 --- lib/output.js | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/lib/output.js b/lib/output.js index 7f88d1f1..37e30c0e 100644 --- a/lib/output.js +++ b/lib/output.js @@ -508,8 +508,17 @@ function OutputStream(options) { }); PARENS(AST_Call, function(output){ - var p = output.parent(); - return p instanceof AST_New && p.expression === this; + var p = output.parent(), p1; + if (p instanceof AST_New && p.expression === this) + return true; + + // workaround for Safari bug. + // https://bugs.webkit.org/show_bug.cgi?id=123506 + return this.expression instanceof AST_Function + && p instanceof AST_PropAccess + && p.expression === this + && (p1 = output.parent(1)) instanceof AST_Assign + && p1.left === p; }); PARENS(AST_New, function(output){ -- 2.34.1