Title: [260244] trunk/Source/WebKit
Revision
260244
Author
[email protected]
Date
2020-04-17 05:53:09 -0700 (Fri, 17 Apr 2020)

Log Message

[GTK] UI process crash when entering compositing mode when WPE_RENDERER is enabled
https://bugs.webkit.org/show_bug.cgi?id=209118

Reviewed by Michael Catanzaro.

Check if EGL_WL_bind_wayland_display extension is available when using WPE_RENDERER, since we don't suport the
SHM interface.

* UIProcess/gtk/AcceleratedBackingStoreWayland.cpp:
(WebKit::AcceleratedBackingStoreWayland::checkRequirements): Return false if EGL_WL_bind_wayland_display is not present.

Modified Paths

Diff

Modified: trunk/Source/WebKit/ChangeLog (260243 => 260244)


--- trunk/Source/WebKit/ChangeLog	2020-04-17 10:16:36 UTC (rev 260243)
+++ trunk/Source/WebKit/ChangeLog	2020-04-17 12:53:09 UTC (rev 260244)
@@ -1,3 +1,16 @@
+2020-04-17  Carlos Garcia Campos  <[email protected]>
+
+        [GTK] UI process crash when entering compositing mode when WPE_RENDERER is enabled
+        https://bugs.webkit.org/show_bug.cgi?id=209118
+
+        Reviewed by Michael Catanzaro.
+
+        Check if EGL_WL_bind_wayland_display extension is available when using WPE_RENDERER, since we don't suport the
+        SHM interface.
+
+        * UIProcess/gtk/AcceleratedBackingStoreWayland.cpp:
+        (WebKit::AcceleratedBackingStoreWayland::checkRequirements): Return false if EGL_WL_bind_wayland_display is not present.
+
 2020-04-17  Rob Buis  <[email protected]>
 
         Move allowPlugins to FrameLoader

Modified: trunk/Source/WebKit/UIProcess/gtk/AcceleratedBackingStoreWayland.cpp (260243 => 260244)


--- trunk/Source/WebKit/UIProcess/gtk/AcceleratedBackingStoreWayland.cpp	2020-04-17 10:16:36 UTC (rev 260243)
+++ trunk/Source/WebKit/UIProcess/gtk/AcceleratedBackingStoreWayland.cpp	2020-04-17 12:53:09 UTC (rev 260244)
@@ -92,9 +92,14 @@
 {
 #if USE(WPE_RENDERER)
     if (!glImageTargetTexture2D) {
-        if (!wpe_fdo_initialize_for_egl_display(PlatformDisplay::sharedDisplay().eglDisplay()))
+        auto* eglDisplay = PlatformDisplay::sharedDisplay().eglDisplay();
+        const char* extensions = eglQueryString(eglDisplay, EGL_EXTENSIONS);
+        if (!GLContext::isExtensionSupported(extensions, "EGL_WL_bind_wayland_display"))
             return false;
 
+        if (!wpe_fdo_initialize_for_egl_display(eglDisplay))
+            return false;
+
         std::unique_ptr<WebCore::GLContext> eglContext = GLContext::createOffscreenContext();
         if (!eglContext)
             return false;
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to