Currently, if a canvas is backed by an IOSurface, its isAccelerated method simply reports whether or not the page settings have canvasUsesAcceleratedDrawing enabled. This leads to an inconsistency because having that preference on isn't a sufficient condition for an accelerated canvas backend (e.g. when the IOSurface backend is avoided due to size limits). Thus, when the canvas is backed by an IOSurface then isAccelerated on the context should only report true when the ImageBuffer is in fact in Accelerated Rendering mode (i.e. it did in fact create an IOSurface backing).
Created attachment 87899 [details] Patch
Comment on attachment 87899 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=87899&action=review > Source/WebCore/platform/graphics/ImageBuffer.h:89 > + bool isAccelerated() { return m_accelerateRendering; } This should be |const|
Committed r82715: <http://trac.webkit.org/changeset/82715>