Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 3b678c38be451b2ab6cfb82cf0b9232b5b2205fd
      
https://github.com/WebKit/WebKit/commit/3b678c38be451b2ab6cfb82cf0b9232b5b2205fd
  Author: Alejandro G. Castro <[email protected]>
  Date:   2026-03-26 (Thu, 26 Mar 2026)

  Changed paths:
    M Source/WebCore/platform/graphics/android/PlatformDisplayAndroid.cpp
    M 
Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/AcceleratedSurface.cpp

  Log Message:
  -----------
  [Android] Fall back when AHardwareBuffer EGL import is unavailable
https://bugs.webkit.org/show_bug.cgi?id=310475

Reviewed by Adrian Perez de Castro.

Some Android EGL displays initialize successfully but cannot actually import
AHardwareBuffer objects as EGLImages. The Android coordinated graphics path
currently assumes that an Android display always supports that import path,
which can leave the swap chain without a valid rendering fallback.

Probe AHardwareBuffer import support when creating PlatformDisplayAndroid.
Prefer the Android platform display when it supports native-buffer import,
retry with eglGetDisplay() when it does not. Fallback to PlatformDisplayDefault
and handle Type::Default properly in Android in this case.

Also treat core EGL 1.5 image support as sufficient for the probe, matching
the existing EGL image creation logic instead of requiring the legacy
EGL_KHR_image_base extension string.

* Source/WebCore/platform/graphics/android/PlatformDisplayAndroid.cpp:
(WebCore::supportsAndroidNativeBufferImport):
(WebCore::PlatformDisplayAndroid::create):
* Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/AcceleratedSurface.cpp:
(WebKit::AcceleratedSurface::SwapChain::SwapChain):

Canonical link: https://commits.webkit.org/309983@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications

Reply via email to