[PATCH xserver] glamor: move 'dri3_capable' extension checks after eglMakeCurrent

Michel Dänzer michel at daenzer.net
Fri Sep 25 14:49:16 PDT 2015


On 25.09.2015 22:04, Emil Velikov wrote:
> Otherwise we'll fail and/or crash as no context is bound.
> 
> Fixes: 64e6124f27e(glamor: move GL_OES_EGL_image check next to
> EGL_EXT_image_dma_buf_import)
> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=92105
> Cc: Michel Dänzer <michel at daenzer.net>
> Cc: Nick Sarnie <commendsarnex at gmail.com>
> Reported-by: Nick Sarnie <commendsarnex at gmail.com>
> Signed-off-by: Emil Velikov <emil.l.velikov at gmail.com>
> ---
> 
> Sorry about this guys - had a bit of a brain-freeze.
> 
> I opted to move the whole hunk, as 1) the egl extension checks above are 
> required, whist these are optional, and 2) having two GLAMOR_HAS_GBM 
> blocks seems a bit of an overkill.
> 
> -Emil
> 
>  glamor/glamor_egl.c | 18 +++++++++---------
>  1 file changed, 9 insertions(+), 9 deletions(-)
> 
> diff --git a/glamor/glamor_egl.c b/glamor/glamor_egl.c
> index dcff443..2e6c7bd 100644
> --- a/glamor/glamor_egl.c
> +++ b/glamor/glamor_egl.c
> @@ -866,15 +866,6 @@ glamor_egl_init(ScrnInfoPtr scrn, int fd)
>                                  KHR_surfaceless_opengl);
>  #endif
>  
> -#ifdef GLAMOR_HAS_GBM
> -    if (epoxy_has_egl_extension(glamor_egl->display,
> -                                "EGL_KHR_gl_texture_2D_image") &&
> -        epoxy_has_egl_extension(glamor_egl->display,
> -                                "EGL_EXT_image_dma_buf_import") &&
> -        epoxy_has_gl_extension("GL_OES_EGL_image"))
> -        glamor_egl->dri3_capable = TRUE;
> -#endif
> -
>      glamor_egl->context = eglCreateContext(glamor_egl->display,
>                                             NULL, EGL_NO_CONTEXT,
>                                             config_attribs);
> @@ -889,6 +880,15 @@ glamor_egl_init(ScrnInfoPtr scrn, int fd)
>                     "Failed to make EGL context current\n");
>          goto error;
>      }
> +#ifdef GLAMOR_HAS_GBM
> +    if (epoxy_has_egl_extension(glamor_egl->display,
> +                                "EGL_KHR_gl_texture_2D_image") &&
> +        epoxy_has_egl_extension(glamor_egl->display,
> +                                "EGL_EXT_image_dma_buf_import") &&
> +        epoxy_has_gl_extension("GL_OES_EGL_image"))
> +        glamor_egl->dri3_capable = TRUE;
> +#endif
> +
>      glamor_egl->saved_free_screen = scrn->FreeScreen;
>      scrn->FreeScreen = glamor_egl_free_screen;
>  #ifdef GLAMOR_GLES2
> 

Might be nice to add an empty line before the new position of the
#ifdef. Either way,

Reviewed-by: Michel Dänzer <michel.daenzer at amd.com>


-- 
Earthling Michel Dänzer               |               http://www.amd.com
Libre software enthusiast             |             Mesa and X developer


More information about the xorg-devel mailing list