[Mesa-dev] [Bug 106377] eglWaitClient() doesn't work for surfaceless contexts

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Thu May 3 13:23:07 UTC 2018


https://bugs.freedesktop.org/show_bug.cgi?id=106377

            Bug ID: 106377
           Summary: eglWaitClient() doesn't work for surfaceless contexts
           Product: Mesa
           Version: 18.0
          Hardware: All
                OS: All
            Status: NEW
          Severity: major
          Priority: medium
         Component: EGL
          Assignee: mesa-dev at lists.freedesktop.org
          Reporter: mgorchak at qnx.com
        QA Contact: mesa-dev at lists.freedesktop.org

When surfaceless contexts are in use (for example, for FBO rendering),
eglWaitClient return an error EGL_BAD_CURRENT_SURFACE. According to spec it
should do glFinish()-like behavior disregarding if it has bound surface to the
context or not.

In case of using DRI2 backend it happens that in case of surfaceless context
dri2_wait_client() is not called at all and aborted at _eglWaitClientCommon()
function with following check:

   /* let bad current context imply bad current surface */
   if (_eglGetContextHandle(ctx) == EGL_NO_CONTEXT ||
       _eglGetSurfaceHandle(ctx->DrawSurface) == EGL_NO_SURFACE)
      RETURN_EGL_ERROR(disp, EGL_BAD_CURRENT_SURFACE, EGL_FALSE);

-- 
You are receiving this mail because:
You are the assignee for the bug.
You are the QA Contact for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20180503/3bbda082/attachment.html>


More information about the mesa-dev mailing list