[Webkit-unassigned] [Bug 42273] New: Convolution computation causes bad alpha channel values

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Wed Jul 14 11:06:46 PDT 2010


https://bugs.webkit.org/show_bug.cgi?id=42273

           Summary: Convolution computation causes bad alpha channel
                    values
           Product: WebKit
           Version: 528+ (Nightly build)
          Platform: PC
        OS/Version: Mac OS X 10.5
            Status: UNCONFIRMED
          Severity: Normal
          Priority: P2
         Component: SVG
        AssignedTo: webkit-unassigned at lists.webkit.org
        ReportedBy: anicolao at chromium.org
                CC: zimmermann at kde.org


First pointed out in http://code.google.com/p/chromium/issues/detail?id=48498 there is a problem with convolution of alpha values for SVG.

The SVG specification is wrong in my opinion. However, what it says in http://www.w3.org/TR/SVG/filters.html#feConvolveMatrixElement is that if preserveAlpha is true, then unpremultiply, convolve, and multiply again (sounds good to me); while if it's false, just apply the convolution to every channel (easy to create invalid results). I think the two should have the same semantics; unpremultiply, convolve either just the color channels or color+alpha, then premultiply again. 

Ignoring my opinion, the bottom line is that the spec implies that each channel should be transformed independently. This can produce an alpha channel that is lower than the premultiplied R, G, or B channels, which is invalid. The result is either assertion failures or crashes in the skia rendering path for chromium.

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list