Bug 156325

Summary: Page tiles are missing when graphics acceleration is unavailable
Product: WebKit Reporter: Simon Fraser (smfr) <simon.fraser>
Component: New BugsAssignee: Simon Fraser (smfr) <simon.fraser>
Status: RESOLVED FIXED    
Severity: Normal CC: benjamin, cdumez, cmarcelo, commit-queue, simon.fraser
Priority: P2    
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch thorton: review+

Description Simon Fraser (smfr) 2016-04-06 18:00:35 PDT
Page tiles are missing when graphics acceleration is unavailable
Comment 1 Simon Fraser (smfr) 2016-04-06 18:03:56 PDT
Created attachment 275840 [details]
Patch
Comment 2 Tim Horton 2016-04-06 18:06:35 PDT
Comment on attachment 275840 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=275840&action=review

> Source/WebCore/platform/graphics/ca/TileController.cpp:504
> +    // IOSurface::maximumSize() can return { INT_MAX, INT_MAX } when hardware acceleration is unavailable, so clamp to a reasonable value.
> +    const int kMaxAllowableTileSize = 32 * 1024;
> +    surfaceSizeLimit = surfaceSizeLimit.shrunkTo({ kMaxAllowableTileSize, kMaxAllowableTileSize });

I wonder if we can make it so that the IOSurface wrapper makes it harder to get this wrong, instead of depending on callers to do work to get it right.
Comment 3 Simon Fraser (smfr) 2016-04-06 18:21:20 PDT
https://trac.webkit.org/r199130
Comment 4 Simon Fraser (smfr) 2016-04-06 18:47:15 PDT
Windows build fix in https://trac.webkit.org/r199133