[Webkit-unassigned] [Bug 98403] New: SVG image cache is very broken

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Thu Oct 4 06:38:50 PDT 2012


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

           Summary: SVG image cache is very broken
           Product: WebKit
           Version: 528+ (Nightly build)
          Platform: All
        OS/Version: Unspecified
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: SVG
        AssignedTo: webkit-unassigned at lists.webkit.org
        ReportedBy: blambov at google.com
                CC: zimmermann at kde.org


There's a special cache for SVG images in the webkit code, SVGImageCache.cpp, which is supposed to cache the image as one or more bitmaps so that it can be quickly redrawn. 

This cache is broken in many ways:
* It usually does not apply at all, because it relies on a call to set dimensions that it never receives because it is normally made before the cache is constructed (see CachedImage::setContainerSizeForRenderer). This masks the other problems with the cache as it is hard (but possible) to engage the cache.
* The cache does not take SVG/CSS transformations into account when calculating the cached image scale, which may result in images that are way too big or way too small, in both cases resulting in very ugly rendering.
* The cache re-renders all cached content on all image changes rather than waiting for a renderer to actually request cached data, resulting in wasteful and unnecessary pauses.
* The cache is per-renderer, which is too wasteful and practically defeats its purpose.

-- 
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