summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorWonsik Jung <sidein@samsung.com>2013-11-13 16:58:01 +0900
committerCedric Bail <cedric.bail@samsung.com>2013-11-15 14:08:40 +0900
commitd2b647d2b378a88bee07610a7416d4257bbebbb6 (patch)
tree9d5c2578e91bfc0acab0abeb03c06b7c03203fda /src
parent8e362c7ad41bd4c48960400c890dd362e50f5389 (diff)
evas: fix a missing eglMakeCurrent in image_cache_flush/image_cache_set in the GL X11 backend.
[Problem] When glTextureDelete is called in image_cache_flush(), it sometimes doesn't work. [Cause] glTextureDelete is called with the wrong eglContext. [Solution] Call eng_window_use() in image_cache_flush() and image_cache_set() to use the correct eglContext. Change-Id: Id7ab1aaeb456be6dbc5f09cb2731ace5399a5dce Signed-off-by: Cedric Bail <cedric.bail@samsung.com>
Diffstat (limited to 'src')
-rw-r--r--src/modules/evas/engines/gl_x11/evas_engine.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/modules/evas/engines/gl_x11/evas_engine.c b/src/modules/evas/engines/gl_x11/evas_engine.c
index 3ca24521a2..b40dcbb14e 100644
--- a/src/modules/evas/engines/gl_x11/evas_engine.c
+++ b/src/modules/evas/engines/gl_x11/evas_engine.c
@@ -3080,6 +3080,8 @@ eng_image_cache_flush(void *data)
3080 3080
3081 re = (Render_Engine *)data; 3081 re = (Render_Engine *)data;
3082 3082
3083 if (re) eng_window_use(re->win);
3084
3083 tmp_size = evas_common_image_get_cache(); 3085 tmp_size = evas_common_image_get_cache();
3084 evas_common_image_set_cache(0); 3086 evas_common_image_set_cache(0);
3085 evas_common_rgba_image_scalecache_flush(); 3087 evas_common_rgba_image_scalecache_flush();
@@ -3093,6 +3095,9 @@ eng_image_cache_set(void *data, int bytes)
3093 Render_Engine *re; 3095 Render_Engine *re;
3094 3096
3095 re = (Render_Engine *)data; 3097 re = (Render_Engine *)data;
3098
3099 if (re) eng_window_use(re->win);
3100
3096 evas_common_image_set_cache(bytes); 3101 evas_common_image_set_cache(bytes);
3097 evas_common_rgba_image_scalecache_size_set(bytes); 3102 evas_common_rgba_image_scalecache_size_set(bytes);
3098 evas_gl_common_image_cache_flush(re->win->gl_context); 3103 evas_gl_common_image_cache_flush(re->win->gl_context);