[sequencesize] Actually even better:
authorMihai Bazon <mihai.bazon@gmail.com>
Sun, 22 Mar 2015 11:01:42 +0000 (13:01 +0200)
committerMihai Bazon <mihai.bazon@gmail.com>
Sun, 22 Mar 2015 11:02:45 +0000 (13:02 +0200)
do create the sequence even if the stat list is bigger than 2000 statements,
but limit the sequence itself to 2000 expressions.

Ref #414

lib/compress.js

index b50e7cf..a9e1da3 100644 (file)
@@ -479,7 +479,7 @@ merge(Compressor.prototype, {
         };
 
         function sequencesize(statements, compressor) {
-            if (statements.length < 2 || statements.length > 2000) return statements;
+            if (statements.length < 2) return statements;
             var seq = [], ret = [];
             function push_seq() {
                 seq = AST_Seq.from_array(seq);
@@ -489,7 +489,7 @@ merge(Compressor.prototype, {
                 seq = [];
             };
             statements.forEach(function(stat){
-                if (stat instanceof AST_SimpleStatement) seq.push(stat.body);
+                if (stat instanceof AST_SimpleStatement && seq.length < 2000) seq.push(stat.body);
                 else push_seq(), ret.push(stat);
             });
             push_seq();