Enlightenment CVS committal
Author : raster
Project : e17
Module : libs/ecore
Dir : e17/libs/ecore/src/lib/ecore_evas
Modified Files:
Tag: SPLIT
ecore_evas.c ecore_evas_fb.c ecore_evas_x.c
Log Message:
oops.... um paranoia double free on del req. i need to add magic trapping to
ecore_evas sometime to trap this kind of sillieness :)
===================================================================
RCS file: /cvsroot/enlightenment/e17/libs/ecore/src/lib/ecore_evas/Attic/ecore_evas.c,v
retrieving revision 1.1.2.11
retrieving revision 1.1.2.12
diff -u -3 -r1.1.2.11 -r1.1.2.12
--- ecore_evas.c 11 Feb 2003 06:27:09 -0000 1.1.2.11
+++ ecore_evas.c 11 Feb 2003 11:26:05 -0000 1.1.2.12
@@ -44,11 +44,20 @@
if (!ee) return;
if (ee->driver) free(ee->driver);
if (ee->name) free(ee->name);
+ if (ee->prop.title) free(ee->prop.title);
if (ee->prop.name) free(ee->prop.name);
if (ee->prop.clas) free(ee->prop.clas);
if (ee->prop.cursor.file) free(ee->prop.cursor.file);
if (ee->prop.cursor.object) evas_object_del(ee->prop.cursor.object);
if (ee->evas) evas_free(ee->evas);
+ ee->driver = NULL;
+ ee->name = NULL;
+ ee->prop.title = NULL;
+ ee->prop.name = NULL;
+ ee->prop.clas = NULL;
+ ee->prop.cursor.file = NULL;
+ ee->prop.cursor.object = NULL;
+ ee->evas = NULL;
if (ee->engine.func->fn_free) ee->engine.func->fn_free(ee);
free(ee);
}
===================================================================
RCS file:
/cvsroot/enlightenment/e17/libs/ecore/src/lib/ecore_evas/Attic/ecore_evas_fb.c,v
retrieving revision 1.1.2.1
retrieving revision 1.1.2.2
diff -u -3 -r1.1.2.1 -r1.1.2.2
--- ecore_evas_fb.c 11 Feb 2003 06:27:09 -0000 1.1.2.1
+++ ecore_evas_fb.c 11 Feb 2003 11:26:05 -0000 1.1.2.2
@@ -121,9 +121,9 @@
static void
_ecore_evas_fb_free(Ecore_Evas *ee)
{
- ecore_fb_shutdown();
ecore_evases = _ecore_list_remove(ecore_evases, ee);
_ecore_evas_fb_shutdown();
+ ecore_fb_shutdown();
}
static void
===================================================================
RCS file:
/cvsroot/enlightenment/e17/libs/ecore/src/lib/ecore_evas/Attic/ecore_evas_x.c,v
retrieving revision 1.1.2.1
retrieving revision 1.1.2.2
diff -u -3 -r1.1.2.1 -r1.1.2.2
--- ecore_evas_x.c 11 Feb 2003 06:27:09 -0000 1.1.2.1
+++ ecore_evas_x.c 11 Feb 2003 11:26:05 -0000 1.1.2.2
@@ -421,15 +421,19 @@
static void
_ecore_evas_x_free(Ecore_Evas *ee)
{
- ecore_x_shutdown();
ecore_x_window_del(ee->engine.x.win);
ecore_x_window_del(ee->engine.x.win_container);
if (ee->engine.x.pmap) ecore_x_pixmap_del(ee->engine.x.pmap);
if (ee->engine.x.mask) ecore_x_pixmap_del(ee->engine.x.mask);
if (ee->engine.x.gc) ecore_x_gc_del(ee->engine.x.gc);
if (ee->engine.x.damages) XDestroyRegion(ee->engine.x.damages);
+ ee->engine.x.pmap = 0;
+ ee->engine.x.mask = 0;
+ ee->engine.x.gc = 0;
+ ee->engine.x.damages = 0;
ecore_evases = _ecore_list_remove(ecore_evases, ee);
_ecore_evas_x_shutdown();
+ ecore_x_shutdown();
}
static void
-------------------------------------------------------
This SF.NET email is sponsored by:
SourceForge Enterprise Edition + IBM + LinuxWorld = Something 2 See!
http://www.vasoftware.com
_______________________________________________
enlightenment-cvs mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs