From 0b0ff2b15217e5cdcaceca92bb301e80d7e472d2 Mon Sep 17 00:00:00 2001 From: Xidorn Quan Date: Thu, 3 Nov 2016 14:44:27 +1100 Subject: [PATCH] Add binding function to create empty DeclarationBlock --- components/style/gecko_bindings/bindings.rs | 4 ++++ ports/geckolib/glue.rs | 5 +++++ 2 files changed, 9 insertions(+) diff --git a/components/style/gecko_bindings/bindings.rs b/components/style/gecko_bindings/bindings.rs index 4a5350f0134..e9cb580d217 100644 --- a/components/style/gecko_bindings/bindings.rs +++ b/components/style/gecko_bindings/bindings.rs @@ -922,6 +922,10 @@ extern "C" { pub fn Servo_ParseStyleAttribute(data: *const nsACString_internal) -> RawServoDeclarationBlockStrong; } +extern "C" { + pub fn Servo_DeclarationBlock_CreateEmpty() + -> RawServoDeclarationBlockStrong; +} extern "C" { pub fn Servo_DeclarationBlock_Equals(a: RawServoDeclarationBlockBorrowed, b: RawServoDeclarationBlockBorrowed) diff --git a/ports/geckolib/glue.rs b/ports/geckolib/glue.rs index 4b2fe8d5e77..ba4a023b715 100644 --- a/ports/geckolib/glue.rs +++ b/ports/geckolib/glue.rs @@ -420,6 +420,11 @@ pub extern "C" fn Servo_ParseStyleAttribute(data: *const nsACString) -> RawServo Arc::new(RwLock::new(GeckoElement::parse_style_attribute(value))).into_strong() } +#[no_mangle] +pub extern "C" fn Servo_DeclarationBlock_CreateEmpty() -> RawServoDeclarationBlockStrong { + Arc::new(RwLock::new(PropertyDeclarationBlock { declarations: vec![], important_count: 0 })).into_strong() +} + #[no_mangle] pub extern "C" fn Servo_DeclarationBlock_AddRef(declarations: RawServoDeclarationBlockBorrowed) { unsafe { RwLock::::addref(declarations) };