Chromium Code Reviews| Index: Source/core/rendering/svg/RenderSVGResourceFilter.cpp |
| diff --git a/Source/core/rendering/svg/RenderSVGResourceFilter.cpp b/Source/core/rendering/svg/RenderSVGResourceFilter.cpp |
| index 1d33e07aad3af7ee616d19cbc00c4d4b018ac82a..bd3653ce57e7f292b473c563b40437e9bf1c28e0 100644 |
| --- a/Source/core/rendering/svg/RenderSVGResourceFilter.cpp |
| +++ b/Source/core/rendering/svg/RenderSVGResourceFilter.cpp |
| @@ -143,7 +143,13 @@ static bool createImageBuffer(const Filter* filter, OwnPtr<ImageBuffer>& imageBu |
| static void beginDeferredFilter(GraphicsContext* context, FilterData* filterData) |
| { |
| - context->beginRecording(filterData->boundaries); |
| + // FIXME: maybe filterData should just hold onto SourceGraphic after creation? |
| + SourceGraphic* sourceGraphic = static_cast<SourceGraphic*>(filterData->builder->getEffectById(SourceGraphic::effectName())); |
|
chrishtr
2014/09/02 22:05:58
Typo in variable name.
Stephen Chennney
2014/09/03 14:19:37
Not here, right?
chrishtr
2014/09/03 16:56:11
Acknowledged.
|
| + ASSERT(sourceGraphic); |
| + RefPtr<DisplayList> sourceGraphcisDisplayList = DisplayList::create(filterData->boundaries); |
|
chrishtr
2014/09/02 22:05:57
Typo in variable name.
Stephen Chennney
2014/09/03 14:19:37
Done.
|
| + sourceGraphic->setDisplayList(sourceGraphcisDisplayList); |
| + context->beginRecording(sourceGraphcisDisplayList); |
| + |
| // We pass the boundaries to SkPictureImageFilter so it knows the |
| // world-space position of the filter primitives. It gets them |
| // from the DisplayList, which also applies the inverse translate |
| @@ -157,10 +163,7 @@ static void beginDeferredFilter(GraphicsContext* context, FilterData* filterData |
| static void endDeferredFilter(GraphicsContext* context, FilterData* filterData) |
| { |
| - // FIXME: maybe filterData should just hold onto SourceGraphic after creation? |
| - SourceGraphic* sourceGraphic = static_cast<SourceGraphic*>(filterData->builder->getEffectById(SourceGraphic::effectName())); |
| - ASSERT(sourceGraphic); |
| - sourceGraphic->setDisplayList(context->endRecording()); |
| + context->endRecording(); |
| } |
| static void drawDeferredFilter(GraphicsContext* context, FilterData* filterData, SVGFilterElement* filterElement) |