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

Reply via email to