aboutsummaryrefslogtreecommitdiffstats
path: root/components/layout_2020/dom_traversal.rs
diff options
context:
space:
mode:
authorbors-servo <servo-ops@mozilla.com>2020-04-04 09:35:34 -0400
committerGitHub <noreply@github.com>2020-04-04 09:35:34 -0400
commitd64f7d427a8dc56bbfc92183f57588e7eb1d56c2 (patch)
tree5f07578a53872c2d23da16f2d052cda7ff4ef1e4 /components/layout_2020/dom_traversal.rs
parent9972aee81f0e80d34157325a5e13b3b1a7ef417a (diff)
parent185a402d9cc41d3e680b99564f5fc8b519ecf129 (diff)
downloadservo-d64f7d427a8dc56bbfc92183f57588e7eb1d56c2.tar.gz
servo-d64f7d427a8dc56bbfc92183f57588e7eb1d56c2.zip
Auto merge of #26105 - servo:layout-2020-less-opaque, r=emilio
Make DOM own the style and layout data, in an UnsafeCell
Diffstat (limited to 'components/layout_2020/dom_traversal.rs')
-rw-r--r--components/layout_2020/dom_traversal.rs5
1 files changed, 3 insertions, 2 deletions
diff --git a/components/layout_2020/dom_traversal.rs b/components/layout_2020/dom_traversal.rs
index ef4570a85bb..8ea6bb01de7 100644
--- a/components/layout_2020/dom_traversal.rs
+++ b/components/layout_2020/dom_traversal.rs
@@ -369,7 +369,7 @@ pub(crate) trait NodeExt<'dom>: 'dom + Copy + LayoutNode<'dom> + Send + Sync {
fn style(self, context: &LayoutContext) -> ServoArc<ComputedValues>;
fn as_opaque(self) -> OpaqueNode;
- fn layout_data_mut(&self) -> AtomicRefMut<LayoutDataForElement>;
+ fn layout_data_mut(self) -> AtomicRefMut<'dom, LayoutDataForElement>;
fn element_box_slot(&self) -> BoxSlot<'dom>;
fn pseudo_element_box_slot(&self, which: WhichPseudoElement) -> BoxSlot<'dom>;
fn unset_pseudo_element_box(self, which: WhichPseudoElement);
@@ -446,7 +446,8 @@ where
self.opaque()
}
- fn layout_data_mut(&self) -> AtomicRefMut<LayoutDataForElement> {
+ #[allow(unsafe_code)]
+ fn layout_data_mut(self) -> AtomicRefMut<'dom, LayoutDataForElement> {
self.get_raw_data()
.map(|d| d.layout_data.borrow_mut())
.unwrap()