summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCedric BAIL <cedric@osg.samsung.com>2015-03-24 23:09:28 +0100
committerCedric BAIL <cedric@osg.samsung.com>2015-03-24 23:12:29 +0100
commit274f0d7cbf12c6a0a7d3b3e8b328a98e575cb4a5 (patch)
treedc3c2b1f84eee0ed769f1ce0f95b5c7c753587b2
parent7b1921e148b55f62001e3c2ecafdaf92d870ba46 (diff)
evas: fix use after free.
Thanks to Thanatermesis for tracking this in T2135.
-rw-r--r--src/modules/evas/engines/gl_common/evas_gl_image.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/modules/evas/engines/gl_common/evas_gl_image.c b/src/modules/evas/engines/gl_common/evas_gl_image.c
index 1192bbef9d..29ddaa5e24 100644
--- a/src/modules/evas/engines/gl_common/evas_gl_image.c
+++ b/src/modules/evas/engines/gl_common/evas_gl_image.c
@@ -763,8 +763,11 @@ evas_gl_common_image_update(Evas_Engine_GL_Context *gc, Evas_GL_Image *im)
763{ 763{
764 Image_Entry *ie; 764 Image_Entry *ie;
765 if (!im->im) return; 765 if (!im->im) return;
766 ie = (Image_Entry *)(im->im);
767 evas_gl_common_image_alloc_ensure(im); 766 evas_gl_common_image_alloc_ensure(im);
767
768 // alloc ensure can change im->im, so only get the local variable later.
769 ie = (Image_Entry *)(im->im);
770
768/* 771/*
769 if ((im->cs.space == EVAS_COLORSPACE_YCBCR422P601_PL) || 772 if ((im->cs.space == EVAS_COLORSPACE_YCBCR422P601_PL) ||
770 (im->cs.space == EVAS_COLORSPACE_YCBCR422P709_PL)) 773 (im->cs.space == EVAS_COLORSPACE_YCBCR422P709_PL))