From 67964da2e3c68d845733850da475b0e84fdda330 Mon Sep 17 00:00:00 2001 From: Hermet Park Date: Mon, 23 Sep 2019 21:12:07 +0900 Subject: [PATCH] ector engine: +null checking. Null pixels is allowed when drawing region is 0, In that case, the pixel buffer can be destroyed earlier by vg. @fix --- src/modules/evas/engines/software_generic/evas_engine.c | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/src/modules/evas/engines/software_generic/evas_engine.c b/src/modules/evas/engines/software_generic/evas_engine.c index 072d46b..ff6af8a 100755 --- a/src/modules/evas/engines/software_generic/evas_engine.c +++ b/src/modules/evas/engines/software_generic/evas_engine.c @@ -4507,12 +4507,15 @@ _draw_thread_ector_surface_set(void *data) if (surface) { pixels = evas_cache_image_pixels(&surface->cache_entry); - w = surface->cache_entry.w; - h = surface->cache_entry.h; - x = ector_surface->x; - y = ector_surface->y; - // clear the surface before giving to ector - if (ector_surface->clear) memset(pixels, 0, (w * h * 4)); + if (pixels) + { + w = surface->cache_entry.w; + h = surface->cache_entry.h; + x = ector_surface->x; + y = ector_surface->y; + // clear the surface before giving to ector + if (ector_surface->clear) memset(pixels, 0, (w * h * 4)); + } } ector_buffer_pixels_set(ector_surface->ector, pixels, w, h, 0, EFL_GFX_COLORSPACE_ARGB8888, EINA_TRUE); -- 2.7.4