| Index: third_party/WebKit/Source/core/layout/svg/LayoutSVGContainer.cpp
|
| diff --git a/third_party/WebKit/Source/core/layout/svg/LayoutSVGContainer.cpp b/third_party/WebKit/Source/core/layout/svg/LayoutSVGContainer.cpp
|
| index 14ea841bfb4f8e638d53f6c332c998c02f8a8ec8..e24927b5ea36a642338146bf088d8cb71a66833e 100644
|
| --- a/third_party/WebKit/Source/core/layout/svg/LayoutSVGContainer.cpp
|
| +++ b/third_party/WebKit/Source/core/layout/svg/LayoutSVGContainer.cpp
|
| @@ -111,18 +111,23 @@ void LayoutSVGContainer::styleDidChange(StyleDifference diff,
|
| bool hadIsolation =
|
| oldStyle && !isSVGHiddenContainer() &&
|
| SVGLayoutSupport::willIsolateBlendingDescendantsForStyle(*oldStyle);
|
| - bool isolationChanged =
|
| - hadIsolation ==
|
| - !SVGLayoutSupport::willIsolateBlendingDescendantsForObject(this);
|
| +
|
| + bool willIsolateBlendingDescendants =
|
| + SVGLayoutSupport::willIsolateBlendingDescendantsForObject(this);
|
| +
|
| + bool isolationChanged = hadIsolation != willIsolateBlendingDescendants;
|
| +
|
| + if (isolationChanged)
|
| + setNeedsPaintPropertyUpdate();
|
|
|
| if (!parent() || !isolationChanged)
|
| return;
|
|
|
| - if (hasNonIsolatedBlendingDescendants())
|
| + if (hasNonIsolatedBlendingDescendants()) {
|
| parent()->descendantIsolationRequirementsChanged(
|
| - SVGLayoutSupport::willIsolateBlendingDescendantsForObject(this)
|
| - ? DescendantIsolationNeedsUpdate
|
| - : DescendantIsolationRequired);
|
| + willIsolateBlendingDescendants ? DescendantIsolationNeedsUpdate
|
| + : DescendantIsolationRequired);
|
| + }
|
| }
|
|
|
| bool LayoutSVGContainer::hasNonIsolatedBlendingDescendants() const {
|
|
|