Bug 1466963: Trivially simplify a condition. r?xidorn draft
authorEmilio Cobos Álvarez <emilio@crisal.io>
Tue, 05 Jun 2018 21:17:08 +0200
changeset 804469 d4eedc3d0727bc30c556d01c890d13f79f5d50f4
parent 804468 be95a8e48f6b5c5e872d6821fce7fb20b3c164c5
child 804470 970a8f4c4d34da0421ba473832c1dfbf40509fe8
push id112373
push userbmo:emilio@crisal.io
push dateTue, 05 Jun 2018 22:12:13 +0000
reviewersxidorn
bugs1466963
milestone62.0a1
Bug 1466963: Trivially simplify a condition. r?xidorn MozReview-Commit-ID: L9LzpPt4js4
servo/components/style/properties/declaration_block.rs
--- a/servo/components/style/properties/declaration_block.rs
+++ b/servo/components/style/properties/declaration_block.rs
@@ -512,25 +512,25 @@ impl PropertyDeclarationBlock {
 
         if !definitely_new {
             let mut index_to_remove = None;
             for (i, slot) in self.declarations.iter_mut().enumerate() {
                 if slot.id() != declaration.id() {
                     continue;
                 }
 
-                let important = self.declarations_importance[i];
-                // For declarations from parsing, non-important declarations
-                // shouldn't override existing important one.
-                if important && !importance.important() &&
-                    matches!(source, DeclarationSource::Parsing) {
-                    return false;
-                }
+                if matches!(source, DeclarationSource::Parsing) {
+                    let important = self.declarations_importance[i];
 
-                if matches!(source, DeclarationSource::Parsing) {
+                    // For declarations from parsing, non-important declarations
+                    // shouldn't override existing important one.
+                    if important && !importance.important() {
+                        return false;
+                    }
+
                     // As a compatibility hack, specially on Android,
                     // don't allow to override a prefixed webkit display
                     // value with an unprefixed version from parsing
                     // code.
                     //
                     // TODO(emilio): Unship.
                     if let PropertyDeclaration::Display(old_display) = *slot {
                         use properties::longhands::display::computed_value::T as display;