From 3be5c6a9ecc65ede2a112cfc6f548a3af860471d Mon Sep 17 00:00:00 2001 From: Emil Velikov Date: Sat, 4 Jun 2016 01:09:14 +0100 Subject: [PATCH] egl: android: don't add the image loader extension for !render_node With earlier commit we introduced support for render_node devices, which was couples with the use of the image loader extension. As the work was inspired by egl/wayland we (erroneously) added the extension for the !render_node path as well. That works for wayland, as the implementations of the DRI2 and IMAGE loader extensions converge behind the scenes. As that is not yet the case for Android we shouldn't expose the extension. Fixes: 34ddef39cef ("egl: android: add dma-buf fd support") Cc: Reported-by: Mauro Rossi Tested-by: Mauro Rossi Acked-by: Rob Herring Signed-off-by: Emil Velikov (cherry picked from commit 1816c837c1906382c370d65afe65a691738fd03b) --- src/egl/drivers/dri2/platform_android.c | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/src/egl/drivers/dri2/platform_android.c b/src/egl/drivers/dri2/platform_android.c index 25d02f5f58b..70bbdff33ae 100644 --- a/src/egl/drivers/dri2/platform_android.c +++ b/src/egl/drivers/dri2/platform_android.c @@ -814,10 +814,6 @@ dri2_initialize_android(_EGLDriver *drv, _EGLDisplay *dpy) dri2_dpy->is_render_node = drmGetNodeTypeFromFd(dri2_dpy->fd) == DRM_NODE_RENDER; - dri2_dpy->extensions[0] = &droid_image_loader_extension.base; - dri2_dpy->extensions[1] = &use_invalidate.base; - dri2_dpy->extensions[2] = &image_lookup_extension.base; - /* render nodes cannot use Gem names, and thus do not support * the __DRI_DRI2_LOADER extension */ if (!dri2_dpy->is_render_node) { @@ -827,10 +823,13 @@ dri2_initialize_android(_EGLDriver *drv, _EGLDisplay *dpy) dri2_dpy->dri2_loader_extension.flushFrontBuffer = droid_flush_front_buffer; dri2_dpy->dri2_loader_extension.getBuffersWithFormat = droid_get_buffers_with_format; - dri2_dpy->extensions[3] = &dri2_dpy->dri2_loader_extension.base; - dri2_dpy->extensions[4] = NULL; - } else - dri2_dpy->extensions[3] = NULL; + dri2_dpy->extensions[0] = &dri2_dpy->dri2_loader_extension.base; + } else { + dri2_dpy->extensions[0] = &droid_image_loader_extension.base; + } + dri2_dpy->extensions[1] = &use_invalidate.base; + dri2_dpy->extensions[2] = &image_lookup_extension.base; + dri2_dpy->extensions[3] = NULL; if (!dri2_create_screen(dpy)) { -- 2.11.0