[evas_engine] SW backend : fixed tbm leak 31/123231/3
authorJoogab Yun <joogab.yun@samsung.com>
Fri, 10 Mar 2017 06:43:47 +0000 (15:43 +0900)
committerGerrit Code Review <gerrit@review.vlan103.tizen.org>
Wed, 5 Apr 2017 08:34:55 +0000 (01:34 -0700)
if native surface set NULL, func.free is not called

Change-Id: I687e494d68ccbf06e8577fa752f25f9a3139e0fa

src/modules/evas/engines/wayland_shm/evas_engine.c

index 09dde2d..7835b59 100644 (file)
@@ -298,7 +298,7 @@ eng_image_native_set(void *data EINA_UNUSED, void *image, void *native)
    RGBA_Image *im = image, *im2;
    void *wl_buf = NULL;
 
-   if (!im || !ns) return im;
+   if (!im) return im;
 
    if (ns)
      {
@@ -346,6 +346,8 @@ eng_image_native_set(void *data EINA_UNUSED, void *image, void *native)
             im->native.func.free(im->native.func.data, im);
       }
 
+   if (!ns) return im;
+
 #ifdef EVAS_CSERVE2
    if (evas_cserve2_use_get() && evas_cache2_image_cached(ie))
      evas_cache2_image_close(ie);