Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 8bab43a4d8f73157d14a5d8cb63823370cef0457
https://github.com/WebKit/WebKit/commit/8bab43a4d8f73157d14a5d8cb63823370cef0457
Author: Carlos Alberto Lopez Perez <[email protected]>
Date: 2026-03-26 (Thu, 26 Mar 2026)
Changed paths:
M
Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/AcceleratedSurface.cpp
M Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/AcceleratedSurface.h
Log Message:
-----------
[WPE] Popups may fail to render after refactoring AcceleratedSurface
SwapChain initialization in r310006@main
https://bugs.webkit.org/show_bug.cgi?id=310859
Reviewed by Carlos Garcia Campos.
Since commit 310006@main, AcceleratedSurface::SwapChain calls
wpe_renderer_backend_egl_target_create()
in its constructor using webPage->hostFileDescriptor(), but previously this was
called when window()
was first called.
For popup pages created via window.open() the view backend may not be set up
yet at that point,
resulting in wpe_renderer_backend_egl_target_create() being called with an
empty host FD and
leaving the compositing pipeline broken.
Fix this by restoring the lazy initialization: store the FD and initial size in
the constructor
and create the RenderTargetWPEBackend when window() is called.
* Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/AcceleratedSurface.cpp:
(WebKit::AcceleratedSurface::RenderTargetWPEBackend::RenderTargetWPEBackend):
(WebKit::AcceleratedSurface::SwapChain::SwapChain):
(WebKit::AcceleratedSurface::SwapChain::window):
(WebKit::AcceleratedSurface::window):
(WebKit::AcceleratedSurface::SwapChain::window const): Deleted.
(WebKit::AcceleratedSurface::window const): Deleted.
* Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/AcceleratedSurface.h:
Canonical link: https://commits.webkit.org/310052@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications