From 15fbdbbcf05d194b34695b95b137eab93d861b2b Mon Sep 17 00:00:00 2001 From: Carsten Haitzler Date: Thu, 20 Sep 2012 09:16:57 +0000 Subject: [PATCH] fix native surface null set crash bug. SVN revision: 76898 --- legacy/evas/ChangeLog | 5 +++++ legacy/evas/NEWS | 1 + legacy/evas/src/modules/engines/gl_x11/evas_engine.c | 4 ++-- 3 files changed, 8 insertions(+), 2 deletions(-) diff --git a/legacy/evas/ChangeLog b/legacy/evas/ChangeLog index f05479c59e..5d7d8b4266 100644 --- a/legacy/evas/ChangeLog +++ b/legacy/evas/ChangeLog @@ -1044,3 +1044,8 @@ * Add evas_device API for being able to register devices, set their names, descriptions, classes, parents, sources etc. etc. + +2012-09-20 Carsten Haitzler (The Rasterman) + + * Fix native surface crash when setting to null in some + situations. diff --git a/legacy/evas/NEWS b/legacy/evas/NEWS index 489617dc53..4ad42c64ca 100644 --- a/legacy/evas/NEWS +++ b/legacy/evas/NEWS @@ -20,6 +20,7 @@ Fixes: * Fix EGL/GLES dest alpha rendering bug (no rendering). * Fix evas_object_image_alpha_set when image data not loaded yet. * Fix map surface leak. + * Fix native surface set to null crash bug in gl engine. Evas 1.7.0 diff --git a/legacy/evas/src/modules/engines/gl_x11/evas_engine.c b/legacy/evas/src/modules/engines/gl_x11/evas_engine.c index f41e6a239d..9c6b731e70 100644 --- a/legacy/evas/src/modules/engines/gl_x11/evas_engine.c +++ b/legacy/evas/src/modules/engines/gl_x11/evas_engine.c @@ -2035,7 +2035,7 @@ eng_image_native_set(void *data, void *image, void *native) if (!im) { - if ((!ns) && (ns->type == EVAS_NATIVE_SURFACE_OPENGL)) + if ((ns) && (ns->type == EVAS_NATIVE_SURFACE_OPENGL)) { im = evas_gl_common_image_new_from_data(re->win->gl_context, ns->data.opengl.w, @@ -2044,7 +2044,7 @@ eng_image_native_set(void *data, void *image, void *native) EVAS_COLORSPACE_ARGB8888); } else - return NULL; + return NULL; } if (ns)