From: Jean-Philippe Andre Date: Thu, 23 Apr 2015 07:12:04 +0000 (+0900) Subject: Evas GL masking: Improve performance with scaled images X-Git-Tag: v1.14.0-beta3~21 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=1ffe82fb7c275f7938f745ac564b368765584bfd;p=platform%2Fupstream%2Fefl.git Evas GL masking: Improve performance with scaled images The GL scaled images is a fast path for masking where the shader scales masks on the fly. This optimization actually fixes some issues where the current texture binding was incorrect. --- diff --git a/src/modules/evas/engines/gl_generic/evas_engine.c b/src/modules/evas/engines/gl_generic/evas_engine.c index 31eaabc..6ef0d50 100644 --- a/src/modules/evas/engines/gl_generic/evas_engine.c +++ b/src/modules/evas/engines/gl_generic/evas_engine.c @@ -1175,6 +1175,13 @@ eng_image_scaled_update(void *data EINA_UNUSED, void *scaled, void *image, { if (dst->scaled.origin == src) { + if (dst->references == 1) + { + dst->w = dst_w; + dst->h = dst_h; + dst->scaled.smooth = smooth; + return dst; + } src->references++; reffed = EINA_TRUE; }