diff options
author | Patrick Walton <pcwalton@mimiga.net> | 2016-03-02 11:50:21 -0800 |
---|---|---|
committer | Patrick Walton <pcwalton@mimiga.net> | 2016-03-03 13:09:50 -0800 |
commit | 940bff1f9c5e402fe6a8049afb0cd29ff26bda48 (patch) | |
tree | eac43ddfa4a163288cf543df5de898d59a6ae219 /components/layout/inline.rs | |
parent | 983576ebaaed03d5d5b52d52778fd47cff57da8a (diff) | |
download | servo-940bff1f9c5e402fe6a8049afb0cd29ff26bda48.tar.gz servo-940bff1f9c5e402fe6a8049afb0cd29ff26bda48.zip |
gfx: Stop cloning clipping regions so much.
Clipping regions can contain vectors and so can be expensive to copy.
Diffstat (limited to 'components/layout/inline.rs')
-rw-r--r-- | components/layout/inline.rs | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/components/layout/inline.rs b/components/layout/inline.rs index 291efea790d..1212f8a3cfc 100644 --- a/components/layout/inline.rs +++ b/components/layout/inline.rs @@ -1680,9 +1680,10 @@ impl Flow for InlineFlow { CoordinateSystem::Parent); let stacking_relative_content_box = fragment.stacking_relative_content_box(&stacking_relative_border_box); - let clip = fragment.clipping_region_for_children(&self.base.clip, - &stacking_relative_border_box, - false); + let mut clip = self.base.clip.clone(); + fragment.adjust_clipping_region_for_children(&mut clip, + &stacking_relative_border_box, + false); let is_positioned = fragment.is_positioned(); match fragment.specific { SpecificFragmentInfo::InlineBlock(ref mut info) => { |