[webkit-reviews] review denied: [Bug 89767] SVG Filter Effect sub-region not applied for some filters : [Attachment 149950] Patch
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Fri Jul 13 12:36:37 PDT 2012
Stephen Chenney <schenney at chromium.org> has denied Stephen Chenney
<schenney at chromium.org>'s request for review:
Bug 89767: SVG Filter Effect sub-region not applied for some filters
https://bugs.webkit.org/show_bug.cgi?id=89767
Attachment 149950: Patch
https://bugs.webkit.org/attachment.cgi?id=149950&action=review
------- Additional Comments from Stephen Chenney <schenney at chromium.org>
I have looked at the spec and thought about this some more, and the results for
feGaussianBlur with a filter effect region smaller than the source image are
incorrect.
The spec has this to say in discussion feGaussianBlur: "If the input has
infinite extent and is constant (e.g FillPaint where the fill is a solid
color), this operation has no effect. If the input has infinite extent and the
filter result is the input to an ‘feTile’, the filter is evaluated with
periodic boundary conditions." This tells me that the Filter Effect Region
limits the output pixels you need to compute, but it does not limit the input
pixels that you need to consider. For example, with a blur at a pixel on the
edge of the effect region, you need a source image that includes the blur
radius beyond the effect region.
Our filter code is wrong in this regard. We limit the source image drawing to
the filter effect region, when in fact we can only safely limit it to those
pixels needed by the filter as inputs for the pixels within the filter's effect
region. My guess is that this is why the code was written the way it was
previously, even though that previous code was inefficient and produced
incorrect results in some cases.
I'll try to clarify all this with tests.
More information about the webkit-reviews
mailing list