From: alexlamsl Date: Sat, 18 Feb 2017 11:07:03 +0000 (+0800) Subject: `-c sequences=N` suboptimal at N expression cutoff X-Git-Url: https://git.ndcode.org/public/gitweb.cgi?a=commitdiff_plain;h=f584ca8d0766fb6d2a254dd4487afa91ed2c5034;p=UglifyJS.git `-c sequences=N` suboptimal at N expression cutoff N = 2: a; b; c; d; was: a, b; c; d; now: a, b; c, d; fixes #1455 closes #1457 --- diff --git a/lib/compress.js b/lib/compress.js index ee28ee14..e8b271f3 100644 --- a/lib/compress.js +++ b/lib/compress.js @@ -749,7 +749,10 @@ merge(Compressor.prototype, { seq = []; }; statements.forEach(function(stat){ - if (stat instanceof AST_SimpleStatement && seqLength(seq) < compressor.sequences_limit) { + if (stat instanceof AST_SimpleStatement) { + if (seqLength(seq) >= compressor.sequences_limit) { + push_seq(); + } seq.push(stat.body); } else { push_seq(); diff --git a/test/compress/sequences.js b/test/compress/sequences.js index 0e3319ab..8a3ffe89 100644 --- a/test/compress/sequences.js +++ b/test/compress/sequences.js @@ -169,3 +169,47 @@ for_sequences: { for (y = 5; false;); } } + +limit_1: { + options = { + sequences: 3, + }; + input: { + a; + b; + c; + d; + e; + f; + g; + h; + i; + j; + k; + } + expect: { + a, b, c; + d, e, f; + g, h, i; + j, k; + } +} + +limit_2: { + options = { + sequences: 3, + }; + input: { + a, b; + c, d; + e, f; + g, h; + i, j; + k; + } + expect: { + a, b, c, d; + e, f, g, h; + i, j, k; + } +}