evas_native_tbm : fix dereferenced bug 20/89320/2
authorsunghyun kim <scholb.kim@samsung.com>
Fri, 23 Sep 2016 05:50:40 +0000 (14:50 +0900)
committerGerrit Code Review <gerrit@review.vlan103.tizen.org>
Fri, 23 Sep 2016 09:29:28 +0000 (02:29 -0700)
Change-Id: I655929b7b5c7c608cce70115e34c877255762c6e

src/modules/evas/engines/software_generic/evas_native_tbm.c

index 4c47824..a0049b8 100644 (file)
@@ -235,11 +235,12 @@ _native_bind_cb(void *data EINA_UNUSED, void *image, int x EINA_UNUSED, int y EI
 static void
 _native_unbind_cb(void *data EINA_UNUSED, void *image)
 {
-   RGBA_Image *im = image;
-   Native *n = im->native.data;
+   RGBA_Image *im;
+   Native *n;
    tbm_surface_h tbm_surf;
 
-   if (!im || !n) return;
+   if (!(im = image)) return;
+   if (!(n = im->native.data)) return;
 
    if (n->ns.type == EVAS_NATIVE_SURFACE_TBM)
      tbm_surf = n->ns.data.tbm.buffer;
@@ -258,10 +259,11 @@ _native_unbind_cb(void *data EINA_UNUSED, void *image)
 static void
 _native_free_cb(void *data EINA_UNUSED, void *image)
 {
-   RGBA_Image *im = image;
-   Native *n = im->native.data;
+   RGBA_Image *im;
+   Native *n;
 
-   if (!im) return;
+   if (!(im = image)) return;
+   if (!(n = im->native.data)) return;
    im->native.data        = NULL;
    im->native.func.bind   = NULL;
    im->native.func.unbind = NULL;