[webkit-changes] [WebKit/WebKit] 9941ce: REGRESSION: Black banners on webpage, sometimes co...
mattwoodrow
noreply at github.com
Thu Dec 14 13:51:04 PST 2023
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 9941ce56b7a17396d18b9328222046d86d300551
https://github.com/WebKit/WebKit/commit/9941ce56b7a17396d18b9328222046d86d300551
Author: Matt Woodrow <mattwoodrow at apple.com>
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
More information about the webkit-changes
mailing list