From: Joogab Yun Date: Fri, 20 Nov 2015 05:56:35 +0000 (+0900) Subject: evas/gl_generic: Check for errors when calling tbm X-Git-Tag: submit/tizen/20151125.071930~3 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=acc7504ddcca0379d948c4c3d6acb6223a475c4b;p=platform%2Fupstream%2Fefl.git evas/gl_generic: Check for errors when calling tbm surface map/unmap tbm_surface_map/unmap might fail and return error, so we need to check the return value of these APIs. From 8c2f9a2669b27fcb904205d7422971648f86b246 Mon Sep 17 00:00:00 2001 From: Dongyeon Kim Change-Id: I16bc30434cb72740b0b19b13a7c28ee9b74abad2 --- diff --git a/src/modules/evas/engines/gl_generic/evas_engine.c b/src/modules/evas/engines/gl_generic/evas_engine.c index 3e491dd..b9d83cd 100644 --- a/src/modules/evas/engines/gl_generic/evas_engine.c +++ b/src/modules/evas/engines/gl_generic/evas_engine.c @@ -738,10 +738,15 @@ eng_image_data_get(void *data, void *image, int to_write, DATA32 **image_data, i if ((im->gc->shared->info.sec_tbm_surface) && (secsym_tbm_surface_map)) { tbm_surface_info_s info; - secsym_tbm_surface_map(im->tex->pt->dyn.buffer, + if (secsym_tbm_surface_map(im->tex->pt->dyn.buffer, TBM_SURF_OPTION_READ|TBM_SURF_OPTION_WRITE, - &info); - *image_data = im->tex->pt->dyn.data = (DATA32 *) info.planes[0].ptr; + &info)) + { + ERR("tbm_surface_map failed!"); + *image_data = im->tex->pt->dyn.data = NULL; + } + else + *image_data = im->tex->pt->dyn.data = (DATA32 *) info.planes[0].ptr; } else if ((im->gc->shared->info.sec_image_map) && (secsym_eglMapImageSEC)) { @@ -914,7 +919,10 @@ eng_image_data_put(void *data, void *image, DATA32 *image_data) if (im->tex->pt->dyn.checked_out == 0) { if (im->gc->shared->info.sec_tbm_surface) - secsym_tbm_surface_unmap(im->tex->pt->dyn.buffer); + { + if (secsym_tbm_surface_unmap(im->tex->pt->dyn.buffer)) + ERR("tbm_surface_unmap failed!"); + } else if (im->gc->shared->info.sec_image_map) { void *disp = disp = re->window_egl_display_get(re->software.ob);