Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 9941ce56b7a17396d18b9328222046d86d300551
https://github.com/WebKit/WebKit/commit/9941ce56b7a17396d18b9328222046d86d300551
Author: Matt Woodrow <[email protected]>
Date: 2023-12-14 (Thu, 14 Dec 2023)
Changed paths:
M Source/WebKit/GPUProcess/graphics/RemoteImageBufferSet.cpp
M Source/WebKit/GPUProcess/graphics/RemoteImageBufferSet.h
Log Message:
-----------
REGRESSION: Black banners on webpage, sometimes content doesn't fully render
when tab switching.
https://bugs.webkit.org/show_bug.cgi?id=266429
<rdar://119668502>
Reviewed by Tim Horton.
If we're forcing a full display due to the existing front buffer being volatile
and purged, then
we also need to reset the dirty region to the full bounds of the layer.
This stops us attempting a copy-forward from the old (purged) front buffer, and
also makes sure
we clip to the full bounds, not what the web process thought the dirty region
would be.
When the front buffer is potentially volatile, the web process always
synchronously waits
for the response of this code, so the dirty region on that side should be
updated correctly
already.
* Source/WebKit/GPUProcess/graphics/RemoteImageBufferSet.cpp:
(WebKit::RemoteImageBufferSet::ensureBufferForDisplay):
* Source/WebKit/GPUProcess/graphics/RemoteImageBufferSet.h:
Canonical link: https://commits.webkit.org/272069@main
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes