https://hackernoon.com/ uses lots of layer backing store
Created attachment 343307 [details] Patch
rdar://problem/40257540
I need to verify that the PlatformCALayerRemote part of this is correct. The test results seem wrong.
Comment on attachment 343307 [details] Patch Attachment 343307 [details] did not pass mac-ews (mac): Output: https://webkit-queues.webkit.org/results/8286744 New failing tests: fast/images/animated-gif-iframe-webkit-transform.html
Created attachment 343309 [details] Archive of layout-test-results from ews100 for mac-sierra The attached test failures were seen while running run-webkit-tests on the mac-ews. Bot: ews100 Port: mac-sierra Platform: Mac OS X 10.12.6
Comment on attachment 343307 [details] Patch Attachment 343307 [details] did not pass mac-debug-ews (mac): Output: https://webkit-queues.webkit.org/results/8286774 New failing tests: fast/images/animated-gif-iframe-webkit-transform.html
Created attachment 343310 [details] Archive of layout-test-results from ews114 for mac-sierra The attached test failures were seen while running run-webkit-tests on the mac-debug-ews. Bot: ews114 Port: mac-sierra Platform: Mac OS X 10.12.6
Comment on attachment 343307 [details] Patch Attachment 343307 [details] did not pass ios-sim-ews (ios-simulator-wk2): Output: https://webkit-queues.webkit.org/results/8286810 New failing tests: compositing/backing/backing-store-attachment-outside-viewport.html compositing/backing-store-attachment-1.html
Created attachment 343311 [details] Archive of layout-test-results from ews124 for ios-simulator-wk2 The attached test failures were seen while running run-webkit-tests on the ios-sim-ews. Bot: ews124 Port: ios-simulator-wk2 Platform: Mac OS X 10.13.4
Comment on attachment 343307 [details] Patch Attachment 343307 [details] did not pass mac-wk2-ews (mac-wk2): Output: https://webkit-queues.webkit.org/results/8288326 New failing tests: fast/images/animated-gif-iframe-webkit-transform.html
Created attachment 343316 [details] Archive of layout-test-results from ews106 for mac-sierra-wk2 The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews. Bot: ews106 Port: mac-sierra-wk2 Platform: Mac OS X 10.12.6
Comment on attachment 343307 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=343307&action=review > Source/WebCore/platform/graphics/ca/GraphicsLayerCA.cpp:-890 > - return; It's surprising that you want to do the rest of this method if there's no backing store. Do you need to signal DirtyRectsChanged or set a repaint rect to get your new behavior to work? > Source/WebCore/platform/graphics/ca/cocoa/PlatformCALayerCocoa.mm:750 > + return [m_layer contents]; Why didn't you use "!!m_layer.contents" here like you did in PlatformCALayerRemote::hasContents()?
performance-api/performance-observer-no-document-leak.html is flaky for reasons unrelated to this patch.
Comment on attachment 343307 [details] Patch This patch seems to contribute to flakiness on the test infrastructure.
(In reply to Brent Fulgham from comment #14) > Comment on attachment 343307 [details] > Patch > > This patch seems to contribute to flakiness on the test infrastructure. If you're referring to performance-api/performance-observer-no-document-leak.html, then it is my test and has nothing to do with this patch. I am currently looking into why performance-api/performance-observer-no-document-leak.html is flaky (I added this test recently).
Looks like I broke some animated image tests; investigating.
Created attachment 343678 [details] Patch
Created attachment 343719 [details] Patch for EWS
Created attachment 343720 [details] Patch
Comment on attachment 343678 [details] Patch Clearing flags on attachment: 343678 Committed r233268: <https://trac.webkit.org/changeset/233268>
All reviewed patches have been landed. Closing bug.
This change broke the Windows build: https://build.webkit.org/builders/Apple%20Win%20Release%20%28Build%29/builds/10303 C:\cygwin\home\buildbot\slave\win-release\build\Source\WebCore\platform\graphics\ca\win\PlatformCALayerWin.cpp(50): error C2259: 'WebCore::PlatformCALayerWin': cannot instantiate abstract class [C:\cygwin\home\buildbot\slave\win-release\build\WebKitBuild\Release\Source\WebCore\WebCore.vcxproj] C:\cygwin\home\buildbot\slave\win-release\build\Source\WebCore\platform\graphics\ca\win\PlatformCALayerWin.cpp(50): note: due to following members: C:\cygwin\home\buildbot\slave\win-release\build\Source\WebCore\platform\graphics\ca\win\PlatformCALayerWin.cpp(50): note: 'bool WebCore::PlatformCALayer::hasContents(void) const': is abstract C:\cygwin\home\buildbot\slave\win-release\build\Source\WebCore\platform\graphics\ca\PlatformCALayer.h(183): note: see declaration of 'WebCore::PlatformCALayer::hasContents' C:\cygwin\home\buildbot\slave\win-release\build\Source\WebCore\platform\graphics\ca\win\PlatformCALayerWin.cpp(55): error C2259: 'WebCore::PlatformCALayerWin': cannot instantiate abstract class [C:\cygwin\home\buildbot\slave\win-release\build\WebKitBuild\Release\Source\WebCore\WebCore.vcxproj] C:\cygwin\home\buildbot\slave\win-release\build\Source\WebCore\platform\graphics\ca\win\PlatformCALayerWin.cpp(55): note: due to following members: C:\cygwin\home\buildbot\slave\win-release\build\Source\WebCore\platform\graphics\ca\win\PlatformCALayerWin.cpp(55): note: 'bool WebCore::PlatformCALayer::hasContents(void) const': is abstract C:\cygwin\home\buildbot\slave\win-release\build\Source\WebCore\platform\graphics\ca\PlatformCALayer.h(183): note: see declaration of 'WebCore::PlatformCALayer::hasContents'
Will fix.
Windows build fix in https://trac.webkit.org/changeset/233274/webkit
This caused a regression, see https://bugs.webkit.org/show_bug.cgi?id=188655.