From 2e0e017b87f77f97d0398c19372990eda7886072 Mon Sep 17 00:00:00 2001 From: Derek Foreman Date: Thu, 29 Jun 2017 13:52:53 -0500 Subject: [PATCH] software_generic: Check dmabuf attribute version during set We should check here instead of only at time of usage. --- src/modules/evas/engines/software_generic/evas_engine.c | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/src/modules/evas/engines/software_generic/evas_engine.c b/src/modules/evas/engines/software_generic/evas_engine.c index 05078fd..f58fb49 100644 --- a/src/modules/evas/engines/software_generic/evas_engine.c +++ b/src/modules/evas/engines/software_generic/evas_engine.c @@ -1134,7 +1134,21 @@ eng_image_native_set(void *data EINA_UNUSED, void *image, void *native) RGBA_Image *im = image; Image_Entry *ie = image, *ie2; - if (!im) return NULL; + if (!im) + { + /* This is a probe for wl_dmabuf viability */ + if (ns && ns->type == EVAS_NATIVE_SURFACE_WL_DMABUF && + !ns->data.wl_dmabuf.resource) + { + struct dmabuf_attributes *attr; + + attr = ns->data.wl_dmabuf.attr; + if (attr->version != EVAS_DMABUF_ATTRIBUTE_VERSION) + ns->data.wl_dmabuf.attr = NULL; + } + + return NULL; + } if (!ns) { if (im->native.data && im->native.func.free) -- 2.7.4