Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: c7854cde7b15902e95be53a13585c872d277aa42
https://github.com/WebKit/WebKit/commit/c7854cde7b15902e95be53a13585c872d277aa42
Author: Nikolas Zimmermann <[email protected]>
Date: 2025-11-12 (Wed, 12 Nov 2025)
Changed paths:
M
Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/ThreadedCompositor.cpp
M Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/ThreadedCompositor.h
Log Message:
-----------
Reland "[GTK][WPE] ThreadedCompositor: Switch didRenderFrameTimer to use a
RunLoopObserver"
https://bugs.webkit.org/show_bug.cgi?id=302348
Reviewed by Carlos Garcia Campos.
We reverted 302433@main in 302809@main to cure the random timeouts observed
on the build bots. The underlying issue was identified, thus we can reland
the patch with a fix included avoiding the timeouts.
Invalidate the didCompositeRunLoopObserver _before_ notifying LayerTreeHost
about the finished composition - this was the culprit leading to a race
condition, where we could miss re-scheduling a RLO, when needed.
Covered by existing tests.
* Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/ThreadedCompositor.cpp:
(WebKit::m_compositingRunLoop):
(WebKit::ThreadedCompositor::invalidate):
(WebKit::ThreadedCompositor::renderLayerTree):
(WebKit::ThreadedCompositor::didCompositeRunLoopObserverFired):
(WebKit::m_didRenderFrameTimer): Deleted.
(WebKit::ThreadedCompositor::didRenderFrameTimerFired): Deleted.
* Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/ThreadedCompositor.h:
Canonical link: https://commits.webkit.org/302899@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications