Mesa (master): egl: fold X11 attrib handling like other platforms

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Wed Jun 5 17:35:55 UTC 2019


Module: Mesa
Branch: master
Commit: 5e0f527d609c8300b0308e4400ec41ef20ed569c
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=5e0f527d609c8300b0308e4400ec41ef20ed569c

Author: Emil Velikov <emil.velikov at collabora.com>
Date:   Thu May 16 18:01:37 2019 +0100

egl: fold X11 attrib handling like other platforms

Since we no longer need special handling for X11, refactor the code to
follow the style used by all other platforms.

Reviewed-by: Mathias Fröhlich <Mathias.Froehlich at web.de>
Reviewed-by: Marek Olšák <marek.olsak at amd.com>
Signed-off-by: Emil Velikov <emil.velikov at collabora.com>
Signed-off-by: Marek Olšák <marek.olsak at amd.com>

---

 src/egl/main/egldisplay.c | 45 +++++++++++----------------------------------
 1 file changed, 11 insertions(+), 34 deletions(-)

diff --git a/src/egl/main/egldisplay.c b/src/egl/main/egldisplay.c
index 418ab0ec9b8..422b473844e 100644
--- a/src/egl/main/egldisplay.c
+++ b/src/egl/main/egldisplay.c
@@ -487,45 +487,22 @@ _eglUnlinkResource(_EGLResource *res, _EGLResourceType type)
 }
 
 #ifdef HAVE_X11_PLATFORM
-static EGLBoolean
-_eglParseX11DisplayAttribList(_EGLDisplay *display,
-                              const EGLAttrib *attrib_list)
-{
-   int i;
-
-   if (attrib_list == NULL) {
-      return EGL_TRUE;
-   }
-
-   /* EGL_EXT_platform_x11 recognizes exactly one attribute,
-    * EGL_PLATFORM_X11_SCREEN_EXT, which is optional.
-    */
-   for (i = 0; attrib_list[i] != EGL_NONE; i += 2) {
-      if (attrib_list[i] != EGL_PLATFORM_X11_SCREEN_EXT)
-         return _eglError(EGL_BAD_ATTRIBUTE, "eglGetPlatformDisplay");
-   }
-
-   return EGL_TRUE;
-}
-
 _EGLDisplay*
 _eglGetX11Display(Display *native_display,
                   const EGLAttrib *attrib_list)
 {
-   _EGLDisplay *display = _eglFindDisplay(_EGL_PLATFORM_X11,
-                                          native_display,
-                                          attrib_list);
-
-   if (!display) {
-      _eglError(EGL_BAD_ALLOC, "eglGetPlatformDisplay");
-      return NULL;
-   }
-
-   if (!_eglParseX11DisplayAttribList(display, attrib_list)) {
-      return NULL;
+   /* EGL_EXT_platform_x11 recognizes exactly one attribute,
+    * EGL_PLATFORM_X11_SCREEN_EXT, which is optional.
+    */
+   if (attrib_list != NULL) {
+      for (int i = 0; attrib_list[i] != EGL_NONE; i += 2) {
+         if (attrib_list[i] != EGL_PLATFORM_X11_SCREEN_EXT) {
+            _eglError(EGL_BAD_ATTRIBUTE, "eglGetPlatformDisplay");
+            return NULL;
+         }
+      }
    }
-
-   return display;
+   return _eglFindDisplay(_EGL_PLATFORM_X11, native_display, attrib_list);
 }
 #endif /* HAVE_X11_PLATFORM */
 




More information about the mesa-commit mailing list