| Index: Source/core/paint/SVGFilterPainter.cpp
|
| diff --git a/Source/core/paint/SVGFilterPainter.cpp b/Source/core/paint/SVGFilterPainter.cpp
|
| index fdc367ac0b38e14cc1cd3837a422c5aa6a0f3250..e774eab470889809e3ede50c52195b2a126fffde 100644
|
| --- a/Source/core/paint/SVGFilterPainter.cpp
|
| +++ b/Source/core/paint/SVGFilterPainter.cpp
|
| @@ -39,8 +39,7 @@ void SVGFilterRecordingContext::endContent(FilterData* filterData)
|
| {
|
| ASSERT(filterData->m_state == FilterData::RecordingContent);
|
|
|
| - // FIXME: maybe filterData should just hold onto SourceGraphic after creation?
|
| - SourceGraphic* sourceGraphic = static_cast<SourceGraphic*>(filterData->builder->getEffectById(SourceGraphic::effectName()));
|
| + SourceGraphic* sourceGraphic = filterData->filter->sourceGraphic();
|
| ASSERT(sourceGraphic);
|
|
|
| GraphicsContext* context = paintingContext();
|
| @@ -64,17 +63,17 @@ void SVGFilterRecordingContext::endContent(FilterData* filterData)
|
| static void paintFilteredContent(LayoutObject& object, GraphicsContext* context, FilterData* filterData)
|
| {
|
| ASSERT(filterData->m_state == FilterData::ReadyToPaint);
|
| - ASSERT(filterData->builder->getEffectById(SourceGraphic::effectName()));
|
| + ASSERT(filterData->filter->sourceGraphic());
|
|
|
| filterData->m_state = FilterData::PaintingFilter;
|
|
|
| SkiaImageFilterBuilder builder;
|
| - RefPtr<SkImageFilter> imageFilter = builder.build(filterData->builder->lastEffect(), ColorSpaceDeviceRGB);
|
| + RefPtr<SkImageFilter> imageFilter = builder.build(filterData->filter->lastEffect(), ColorSpaceDeviceRGB);
|
| FloatRect boundaries = filterData->filter->filterRegion();
|
| context->save();
|
|
|
| // Clip drawing of filtered image to the minimum required paint rect.
|
| - FilterEffect* lastEffect = filterData->builder->lastEffect();
|
| + FilterEffect* lastEffect = filterData->filter->lastEffect();
|
| context->clipRect(lastEffect->determineAbsolutePaintRect(lastEffect->maxEffectRect()));
|
|
|
| #ifdef CHECK_CTM_FOR_TRANSFORMED_IMAGEFILTER
|
| @@ -141,7 +140,7 @@ GraphicsContext* SVGFilterPainter::prepareEffect(LayoutObject& object, SVGFilter
|
| if (!filterData->builder)
|
| return nullptr;
|
|
|
| - FilterEffect* lastEffect = filterData->builder->lastEffect();
|
| + FilterEffect* lastEffect = filterData->filter->lastEffect();
|
| if (!lastEffect)
|
| return nullptr;
|
|
|
|
|