Title: [263263] trunk/Tools
Revision
263263
Author
lmo...@igalia.com
Date
2020-06-19 06:40:11 -0700 (Fri, 19 Jun 2020)

Log Message

[WPE] Warn potential issues when creating WindowViewBackend
https://bugs.webkit.org/show_bug.cgi?id=213326

Reviewed by Philippe Normand.

Make it easier to debug eventual GL issues when starting up MiniBrowser in
windowed mode.

* wpe/backends/WindowViewBackend.cpp:
(WPEToolingBackends::WaylandEGLConnection::singleton):
(WPEToolingBackends::WindowViewBackend::WindowViewBackend):

Modified Paths

Diff

Modified: trunk/Tools/ChangeLog (263262 => 263263)


--- trunk/Tools/ChangeLog	2020-06-19 13:34:26 UTC (rev 263262)
+++ trunk/Tools/ChangeLog	2020-06-19 13:40:11 UTC (rev 263263)
@@ -1,5 +1,19 @@
 2020-06-19  Lauro Moura  <lmo...@igalia.com>
 
+        [WPE] Warn potential issues when creating WindowViewBackend
+        https://bugs.webkit.org/show_bug.cgi?id=213326
+
+        Reviewed by Philippe Normand.
+
+        Make it easier to debug eventual GL issues when starting up MiniBrowser in
+        windowed mode.
+
+        * wpe/backends/WindowViewBackend.cpp:
+        (WPEToolingBackends::WaylandEGLConnection::singleton):
+        (WPEToolingBackends::WindowViewBackend::WindowViewBackend):
+
+2020-06-19  Lauro Moura  <lmo...@igalia.com>
+
         [webkitpy][WPE] Default to headless if _display_server is xfvb
         https://bugs.webkit.org/show_bug.cgi?id=213327
 

Modified: trunk/Tools/wpe/backends/WindowViewBackend.cpp (263262 => 263263)


--- trunk/Tools/wpe/backends/WindowViewBackend.cpp	2020-06-19 13:34:26 UTC (rev 263262)
+++ trunk/Tools/wpe/backends/WindowViewBackend.cpp	2020-06-19 13:40:11 UTC (rev 263263)
@@ -59,15 +59,21 @@
         std::call_once(s_onceFlag,
             [] {
                 s_connection.display = wl_display_connect(nullptr);
-                if (!s_connection.display)
+                if (!s_connection.display) {
+                    g_warning("WaylandEGLConnection: Could not connect to Wayland Display");
                     return;
+                }
 
                 EGLDisplay eglDisplay = eglGetDisplay(s_connection.display);
-                if (eglDisplay == EGL_NO_DISPLAY)
+                if (eglDisplay == EGL_NO_DISPLAY) {
+                    g_warning("WaylandEGLConnection: No EGL Display available in this connection");
                     return;
+                }
 
-                if (!eglInitialize(eglDisplay, nullptr, nullptr) || !eglBindAPI(EGL_OPENGL_ES_API))
+                if (!eglInitialize(eglDisplay, nullptr, nullptr) || !eglBindAPI(EGL_OPENGL_ES_API)) {
+                    g_warning("WaylandEGLConnection: Failed to initialize and bind the EGL Display");
                     return;
+                }
 
                 s_connection.eglDisplay = eglDisplay;
                 wpe_fdo_initialize_for_egl_display(s_connection.eglDisplay);
@@ -512,11 +518,15 @@
     m_initialSize.height = height;
 
     auto& connection = WaylandEGLConnection::singleton();
-    if (!connection.display)
+    if (!connection.display) {
+        g_warning("WindowViewBackend: No Wayland EGL connection available");
         return;
+    }
 
-    if (connection.eglDisplay == EGL_NO_DISPLAY || !initialize(connection.eglDisplay))
+    if (connection.eglDisplay == EGL_NO_DISPLAY || !initialize(connection.eglDisplay)) {
+        g_warning("WindowViewBackend: Could not initialize EGL display");
         return;
+    }
 
     {
         auto* registry = wl_display_get_registry(connection.display);
@@ -563,11 +573,15 @@
     auto createPlatformWindowSurface =
         reinterpret_cast<PFNEGLCREATEPLATFORMWINDOWSURFACEEXTPROC>(eglGetProcAddress("eglCreatePlatformWindowSurfaceEXT"));
     m_eglSurface = createPlatformWindowSurface(connection.eglDisplay, m_eglConfig, m_eglWindow, nullptr);
-    if (!m_eglSurface)
+    if (!m_eglSurface) {
+        g_warning("WindowViewBackend: Could not create EGL platform window surface");
         return;
+    }
 
-    if (!eglMakeCurrent(connection.eglDisplay, m_eglSurface, m_eglSurface, m_eglContext))
+    if (!eglMakeCurrent(connection.eglDisplay, m_eglSurface, m_eglSurface, m_eglContext)) {
+        g_warning("WindowViewBackend: Could not make EGL surface current");
         return;
+    }
 
     imageTargetTexture2DOES = reinterpret_cast<PFNGLEGLIMAGETARGETTEXTURE2DOESPROC>(eglGetProcAddress("glEGLImageTargetTexture2DOES"));
 
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to