From 5e0f527d609c8300b0308e4400ec41ef20ed569c Mon Sep 17 00:00:00 2001 From: Emil Velikov Date: Thu, 16 May 2019 18:01:37 +0100 Subject: [PATCH] egl: fold X11 attrib handling like other platforms MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit 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 Reviewed-by: Marek Olšák Signed-off-by: Emil Velikov Signed-off-by: Marek Olšák --- 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 */ -- 2.30.2