/[blink]
Chromium logo

Revision 185670


Jump to revision: Previous Next
Author: pdr@chromium.org
Date: Thu Nov 20 15:26:53 2014 UTC (8 years, 6 months ago)
Changed paths: 3
Log Message:
Unschedule the SVG filter layer update hack after detaching children

This patch fixes a crash where an element is scheduled for an update
while being detached.

When an element is being detached it would clear the update flag then
detach its children. This is problematic because children can set the
update flag on elements during detach (which is expected). If a child
sets an element as needing an update while that element is being
detached, we'll end up with a detached element that needs a filter update
which can make Document::dirtyElementsForLayerUpdate angry.

When scheduling, we check that an element does not need an attach
(which would handle the filter layer update) before actually scheduling.
This patch moves unscheduling after the element is in a needsAttach state.

Looking forward to removing this hack entirely..

R=esprehn
BUG=429666

Review URL: https://codereview.chromium.org/742693002

Changed paths

Path Details
Directorytrunk/LayoutTests/svg/filters/filter-detach-crash-expected.txt added
Directorytrunk/LayoutTests/svg/filters/filter-detach-crash.html added
Directorytrunk/Source/core/dom/Element.cpp modified , text changed

Properties

Name Value
commit-bot commit-bot@chromium.org

Powered by ViewVC 1.1.26 ViewVC Help