From: cedric Date: Fri, 30 Sep 2011 15:43:51 +0000 (+0000) Subject: evas: correctly handle direct mapping of data for non RGBA case. X-Git-Tag: accepted/2.0/20130306.225542~242^2~15 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=a065bac54b31238fc08c2503ec9f5d366065321b;p=profile%2Fivi%2Fevas.git evas: correctly handle direct mapping of data for non RGBA case. git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/evas@63726 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33 --- diff --git a/src/modules/engines/gl_x11/evas_engine.c b/src/modules/engines/gl_x11/evas_engine.c index 16a7643..532ce0f 100644 --- a/src/modules/engines/gl_x11/evas_engine.c +++ b/src/modules/engines/gl_x11/evas_engine.c @@ -1785,7 +1785,7 @@ eng_image_data_get(void *data, void *image, int to_write, DATA32 **image_data, i #if defined (GLES_VARIETY_S3C6410) || defined (GLES_VARIETY_SGX) eng_window_use(re->win); - if ((im->tex) && (im->tex->pt) && (im->tex->pt->dyn.img)) + if ((im->tex) && (im->tex->pt) && (im->tex->pt->dyn.img) && (im->cs.space == EVAS_COLORSPACE_ARGB8888)) { *image_data = im->tex->pt->dyn.data = glsym_eglMapImageSEC(re->win->egl_disp, im->tex->pt->dyn.img); @@ -1875,13 +1875,16 @@ eng_image_data_put(void *data, void *image, DATA32 *image_data) im = image; if (im->native.data) return image; eng_window_use(re->win); - if ((im->tex) && (im->tex->pt) && (im->tex->pt->dyn.data)) + if ((im->tex) && (im->tex->pt) + && (im->tex->pt->dyn.data) + && (im->cs.space == EVAS_COLORSPACE_ARGB8888)) { #if defined (GLES_VARIETY_S3C6410) || defined (GLES_VARIETY_SGX) glsym_eglUnmapImageSEC(re->win->egl_disp, im->tex->pt->dyn.img); #endif if (im->tex->pt->dyn.data == image_data) { + evas_gl_common_image_dirty(im, 0, 0, 0, 0); return image; } else