On 10/07/18 15:16, Pekka Paalanen wrote: > On Mon, 9 Jul 2018 17:38:49 +0200 > Emilio Pozuelo Monfort <[email protected]> wrote: > >> This code calls into EGL to see if the dmabuf import modifiers >> extension is available, and if not it assumes XRGB8888 is supported. >> >> Rather than disabling this client doesn't get build if one disables >> EGL, we can just remove this and stop lying to ourselves. >> >> Signed-off-by: Emilio Pozuelo Monfort <[email protected]> >> --- >> >> Alright, this removes this check entirely, which means the client will >> fail if the extension is not available. This is just a test client, so >> it's not the end of the world if that combination is tested. >> >> clients/simple-dmabuf-drm.c | 11 ----------- >> 1 file changed, 11 deletions(-) >> >> diff --git a/clients/simple-dmabuf-drm.c b/clients/simple-dmabuf-drm.c >> index fcab30e5..2a21fe51 100644 >> --- a/clients/simple-dmabuf-drm.c >> +++ b/clients/simple-dmabuf-drm.c >> @@ -57,7 +57,6 @@ >> >> #include <wayland-client.h> >> #include "shared/zalloc.h" >> -#include "shared/platform.h" >> #include "xdg-shell-unstable-v6-client-protocol.h" >> #include "fullscreen-shell-unstable-v1-client-protocol.h" >> #include "linux-dmabuf-unstable-v1-client-protocol.h" >> @@ -850,7 +849,6 @@ static struct display * >> create_display(int opts, int format) >> { >> struct display *display; >> - const char *extensions; >> >> display = malloc(sizeof *display); >> if (display == NULL) { >> @@ -863,15 +861,6 @@ create_display(int opts, int format) >> display->req_dmabuf_immediate = opts & OPT_IMMEDIATE; >> display->req_dmabuf_modifiers = (format == DRM_FORMAT_NV12); >> >> - /* >> - * hard code format if the platform egl doesn't support format >> - * querying / advertising. >> - */ >> - extensions = eglQueryString(EGL_NO_DISPLAY, EGL_EXTENSIONS); >> - if (extensions && !weston_check_egl_extension(extensions, >> - "EGL_EXT_image_dma_buf_import_modifiers")) >> - display->xrgb8888_format_found = 1; >> - >> display->registry = wl_display_get_registry(display->display); >> wl_registry_add_listener(display->registry, >> ®istry_listener, display); > > Hi Emilio, > > while this change is good, I found a couple more things that this > exposes. > > The app still gets linked to libEGL and libgbm when it should not. > > The code you remove here was hiding a bug where xrgb8888_format_found > was not set if the dmabuf interface was negotiated to version 2 or 1. > The handler dmabuf_format() has no code. Another patch to fix this > would be nice.
Yes, I have just found some problems when testing this patch for another change. So let's not apply this for now, I will see what's going on and send an updated one. Cheers, Emilio _______________________________________________ wayland-devel mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/wayland-devel
