summaryrefslogtreecommitdiff
path: root/src/modules/evas/engines/gl_common/evas_gl_texture.c
diff options
context:
space:
mode:
authorMinkyoung Kim <mer.kim@samsung.com>2015-12-18 16:49:17 +0900
committerJean-Philippe Andre <jp.andre@samsung.com>2015-12-18 16:49:17 +0900
commit25ebd9155513a9ee063bba0d0c2b0742437c3211 (patch)
tree830bcce0c77ec44ba41a264c2ac225dc5ee41ef4 /src/modules/evas/engines/gl_common/evas_gl_texture.c
parent1921055644c08a3ba549754301193c5225359265 (diff)
downloadefl-25ebd9155513a9ee063bba0d0c2b0742437c3211.tar.gz
evas/gl : Do not re-preload image data if texture is successfully uploaded with image data.
Summary: 'cached' flag is not enough to check whethere data is loaded and texture is uploaded. so check more options for prevent re-preload image data on gl-backend. Test Plan: Local Test (elementary_test : elm images) Reviewers: jpeg, eunue Reviewed By: jpeg Subscribers: cedric, jiin.moon, wonsik, spacegrapher Differential Revision: https://phab.enlightenment.org/D3446
Diffstat (limited to 'src/modules/evas/engines/gl_common/evas_gl_texture.c')
-rw-r--r--src/modules/evas/engines/gl_common/evas_gl_texture.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/modules/evas/engines/gl_common/evas_gl_texture.c b/src/modules/evas/engines/gl_common/evas_gl_texture.c
index 3107507b8b..9c31dda89a 100644
--- a/src/modules/evas/engines/gl_common/evas_gl_texture.c
+++ b/src/modules/evas/engines/gl_common/evas_gl_texture.c
@@ -1427,6 +1427,7 @@ evas_gl_common_texture_update(Evas_GL_Texture *tex, RGBA_Image *im)
}
evas_gl_common_texture_upload(tex, im, bytes_count);
+ im->cache_entry.flags.textured = 1;
}
void
@@ -1484,6 +1485,12 @@ evas_gl_common_texture_free(Evas_GL_Texture *tex, Eina_Bool force EINA_UNUSED)
tex->ptv2 = NULL;
tex->ptuv = NULL;
+ if (tex->im)
+ {
+ tex->im->tex = NULL;
+ if (tex->im->im) tex->im->im->cache_entry.flags.textured = 0;
+ }
+
evas_gl_common_texture_light_free(tex);
}