<html>
    <head>
      <base href="https://bugs.webkit.org/">
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - [GTK] WaylandCompositor misusing eglGetProcAddress"
   href="https://bugs.webkit.org/show_bug.cgi?id=182490">182490</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>[GTK] WaylandCompositor misusing eglGetProcAddress
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>WebKit
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>WebKit Nightly Build
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>PC
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>Linux
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>NEW
          </td>
        </tr>

        <tr>
          <th>Keywords</th>
          <td>Gtk
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>Normal
          </td>
        </tr>

        <tr>
          <th>Priority</th>
          <td>P3
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>WebKit Gtk
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>webkit-unassigned@lists.webkit.org
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>daniel@fooishbar.org
          </td>
        </tr>

        <tr>
          <th>CC</th>
          <td>bugs-noreply@webkitgtk.org
          </td>
        </tr></table>
      <p>
        <div>
        <pre>In WaylandCompositor.cpp's initializeEGL(), eglBindWaylandDisplayWL() is called if eglGetProcAddress() returns any value for it. This causes a crash on newer Mesa when using software rendering: swrast drivers do not provide BindWaylandDisplay (as they rely on wl_shm instead of Mesa extensions), and newer Mesa asserts that the extension is enabled when the entrypoint is called.

The trivial fix would be to check for the extension's presence and fail initializeEGL() if they are not there.

The Mesa bug is here: <a href="https://bugs.freedesktop.org/show_bug.cgi?id=104949">https://bugs.freedesktop.org/show_bug.cgi?id=104949</a></pre>
        </div>
      </p>


      <hr>
      <span>You are receiving this mail because:</span>

      <ul>
          <li>You are the assignee for the bug.</li>
      </ul>
    </body>
</html>