aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorbors-servo <lbergstrom+bors@mozilla.com>2017-07-15 05:49:54 -0700
committerGitHub <noreply@github.com>2017-07-15 05:49:54 -0700
commit5c5c5147eae4159f94dbad9012e04ab9480063fd (patch)
treeb6be21f60f581f21589596080b3d2bdaadd41041
parentf9642b36bda3beb01dfedbc33e3586e5f7df473a (diff)
parent3000326885145aae70655be1c2043b26bc12b2b8 (diff)
downloadservo-5c5c5147eae4159f94dbad9012e04ab9480063fd.tar.gz
servo-5c5c5147eae4159f94dbad9012e04ab9480063fd.zip
Auto merge of #17743 - emilio:assert-properly, r=heycam
stylo: Assert our stuff properly.
-rw-r--r--ports/geckolib/glue.rs16
1 files changed, 7 insertions, 9 deletions
diff --git a/ports/geckolib/glue.rs b/ports/geckolib/glue.rs
index 0ae6264e12f..ed698531c07 100644
--- a/ports/geckolib/glue.rs
+++ b/ports/geckolib/glue.rs
@@ -2770,20 +2770,18 @@ pub extern "C" fn Servo_TakeChangeHint(element: RawGeckoElementBorrowed,
#[no_mangle]
pub extern "C" fn Servo_ResolveStyle(element: RawGeckoElementBorrowed,
- raw_data: RawServoStyleSetBorrowed)
+ _raw_data: RawServoStyleSetBorrowed)
-> ServoComputedValuesStrong
{
let element = GeckoElement(element);
debug!("Servo_ResolveStyle: {:?}", element);
- let data = unsafe { element.ensure_data() }.borrow();
-
- if !element.has_current_styles(&*data) {
- debug_assert!(false, "Resolving style on element without current styles with lazy \
- computation forbidden.");
- let per_doc_data = PerDocumentStyleData::from_ffi(raw_data).borrow();
- return per_doc_data.default_computed_values().clone().into_strong();
- }
+ let data =
+ element.borrow_data().expect("Resolving style on unstyled element");
+ // TODO(emilio): Downgrade to debug assertions when close to release.
+ assert!(data.has_styles(), "Resolving style on unstyled element");
+ assert!(element.has_current_styles(&*data),
+ "Resolving style on element without current styles");
data.styles.primary().clone().into_strong()
}