Chromium Code Reviews| Index: third_party/WebKit/Source/core/paint/FilterEffectBuilder.cpp |
| diff --git a/third_party/WebKit/Source/core/paint/FilterEffectBuilder.cpp b/third_party/WebKit/Source/core/paint/FilterEffectBuilder.cpp |
| index 18b696828b23c7c240151d89b7a95521e54a7e85..781b2958176c8a6287a6ba377fe6984b32fb77b7 100644 |
| --- a/third_party/WebKit/Source/core/paint/FilterEffectBuilder.cpp |
| +++ b/third_party/WebKit/Source/core/paint/FilterEffectBuilder.cpp |
| @@ -130,7 +130,7 @@ DEFINE_TRACE(FilterEffectBuilder) |
| visitor->trace(m_referenceFilters); |
| } |
| -bool FilterEffectBuilder::build(Element* element, const FilterOperations& operations, float zoom) |
| +bool FilterEffectBuilder::build(Element* element, const FilterOperations& operations, float zoom, PassRefPtr<SkShader> fillShader, PassRefPtr<SkShader> strokeShader) |
| { |
| // Create a parent filter for shorthand filters. These have already been scaled by the CSS code for page zoom, so scale is 1.0 here. |
| RefPtrWillBeRawPtr<Filter> parentFilter = Filter::create(1.0f); |
| @@ -140,7 +140,7 @@ bool FilterEffectBuilder::build(Element* element, const FilterOperations& operat |
| FilterOperation* filterOperation = operations.operations().at(i).get(); |
| switch (filterOperation->type()) { |
| case FilterOperation::REFERENCE: { |
| - RefPtrWillBeRawPtr<Filter> referenceFilter = ReferenceFilterBuilder::build(zoom, element, previousEffect.get(), toReferenceFilterOperation(*filterOperation)); |
| + RefPtrWillBeRawPtr<Filter> referenceFilter = ReferenceFilterBuilder::build(zoom, element, previousEffect.get(), toReferenceFilterOperation(*filterOperation), fillShader, strokeShader); |
|
fs
2015/12/21 19:34:20
Won't this "lose" the shaders if there were more t
ajuma
2016/01/11 19:14:08
Good catch, thanks! This now uses a raw pointer to
|
| if (referenceFilter) { |
| effect = referenceFilter->lastEffect(); |
| m_referenceFilters.append(referenceFilter); |