Reverses boolean passed to property optimizer.
authorJakub Pawlowicz <contact@jakubpawlowicz.com>
Mon, 6 Oct 2014 20:28:50 +0000 (21:28 +0100)
committerJakub Pawlowicz <contact@jakubpawlowicz.com>
Fri, 10 Oct 2014 20:22:46 +0000 (21:22 +0100)
lib/properties/optimizer.js
lib/selectors/optimizers/advanced.js

index a04d73f..0d321d1 100644 (file)
@@ -257,12 +257,12 @@ module.exports = function Optimizer(compatibility, aggressiveMerging, context) {
   };
 
   return {
-    process: function(selector, body, allowAdjacent, skipCompacting) {
+    process: function(selector, body, allowAdjacent, compactProperties) {
       var tokenized = tokenize(body, selector);
       var optimized = optimize(tokenized, allowAdjacent);
       var rebuilt = rebuild(optimized);
 
-      return !skipCompacting && processableInfo.implementedFor.test(rebuilt) ?
+      return compactProperties && processableInfo.implementedFor.test(rebuilt) ?
         compact(rebuilt) :
         rebuilt;
     }
index 3b1f1b4..68a9882 100644 (file)
@@ -62,7 +62,7 @@ AdvancedOptimizer.prototype.mergeAdjacent = function (tokens) {
     // TODO: broken due to joining/splitting
     if (lastToken.selector && token.selector.join(',') == lastToken.selector.join(',')) {
       var joinAt = [lastToken.body.length];
-      lastToken.body = this.propertyOptimizer.process(token.selector, lastToken.body.concat(token.body), joinAt, false);
+      lastToken.body = this.propertyOptimizer.process(token.selector, lastToken.body.concat(token.body), joinAt, true);
       forRemoval.push(i);
       // TODO: broken due to joining/splitting
     } else if (lastToken.body && token.body.join(';') == lastToken.body.join(';') && !this.isSpecial(token.selector.join(',')) && !this.isSpecial(lastToken.selector.join(','), this.options)) {
@@ -215,7 +215,7 @@ AdvancedOptimizer.prototype.reduceSelector = function (tokens, selector, data, o
       joinsAt.push((joinsAt[j - 1] || 0) + splitBodies[j].length);
   }
 
-  var optimizedBody = this.propertyOptimizer.process(selector, bodies, joinsAt, true);
+  var optimizedBody = this.propertyOptimizer.process(selector, bodies, joinsAt, false);
   var optimizedProperties = optimizedBody;
 
   var processedCount = processedTokens.length;
@@ -246,7 +246,7 @@ function optimizeProperties(tokens, propertyOptimizer) {
     var token = tokens[i];
 
     if (token.selector) {
-      token.body = propertyOptimizer.process(token.selector, token.body, false, false);
+      token.body = propertyOptimizer.process(token.selector, token.body, false, true);
     } else if (token.block) {
       optimizeProperties(token.body, propertyOptimizer);
     }