From 610ebe2e25086f0d980f5d6cc0ab79e63e0f1130 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Emilio=20Cobos=20=C3=81lvarez?= Date: Sat, 2 Jan 2021 04:50:01 +0000 Subject: [PATCH] style: Reorder some conditions when handling class/part attributes. Empty class attributes are uncommon. Differential Revision: https://phabricator.services.mozilla.com/D100592 --- components/style/gecko/snapshot_helpers.rs | 35 +++++++++++----------- 1 file changed, 17 insertions(+), 18 deletions(-) diff --git a/components/style/gecko/snapshot_helpers.rs b/components/style/gecko/snapshot_helpers.rs index ee8d7dfd704..f34fca40f1c 100644 --- a/components/style/gecko/snapshot_helpers.rs +++ b/components/style/gecko/snapshot_helpers.rs @@ -34,27 +34,26 @@ unsafe fn ptr(attr: &structs::nsAttrValue) -> *const T { unsafe fn get_class_or_part_from_attr(attr: &structs::nsAttrValue) -> Class { debug_assert!(bindings::Gecko_AssertClassAttrValueIsSane(attr)); let base_type = base_type(attr); - if base_type == structs::nsAttrValue_ValueBaseType_eStringBase { - return Class::None; - } if base_type == structs::nsAttrValue_ValueBaseType_eAtomBase { return Class::One(ptr::(attr)); } - debug_assert_eq!(base_type, structs::nsAttrValue_ValueBaseType_eOtherBase); - - let container = ptr::(attr); - debug_assert_eq!( - (*container).mType, - structs::nsAttrValue_ValueType_eAtomArray - ); - let array = (*container) - .__bindgen_anon_1 - .mValue - .as_ref() - .__bindgen_anon_1 - .mAtomArray - .as_ref(); - Class::More(&***array) + if base_type == structs::nsAttrValue_ValueBaseType_eOtherBase { + let container = ptr::(attr); + debug_assert_eq!( + (*container).mType, + structs::nsAttrValue_ValueType_eAtomArray + ); + let array = (*container) + .__bindgen_anon_1 + .mValue + .as_ref() + .__bindgen_anon_1 + .mAtomArray + .as_ref(); + return Class::More(&***array) + } + debug_assert_eq!(base_type, structs::nsAttrValue_ValueBaseType_eStringBase); + Class::None } #[inline(always)]