aboutsummaryrefslogtreecommitdiffstats
path: root/legacy/evas/src/lib/canvas/evas_main.c
diff options
context:
space:
mode:
authorCarsten Haitzler <raster@rasterman.com>2005-06-19 13:06:36 +0000
committerCarsten Haitzler <raster@rasterman.com>2005-06-19 13:06:36 +0000
commit2a5e480ad1aa2600fb80649c83f6766fc13dd27d (patch)
treec4c3a13b3fe0d44f6b11e2251c3f09857635b0a0 /legacy/evas/src/lib/canvas/evas_main.c
parentFix deletion loop in evas_free() (diff)
downloadefl-2a5e480ad1aa2600fb80649c83f6766fc13dd27d.tar.gz
tackpatch
SVN revision: 15429
Diffstat (limited to 'legacy/evas/src/lib/canvas/evas_main.c')
-rw-r--r--legacy/evas/src/lib/canvas/evas_main.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/legacy/evas/src/lib/canvas/evas_main.c b/legacy/evas/src/lib/canvas/evas_main.c
index 2eacf38f8f..0f3b03f5e6 100644
--- a/legacy/evas/src/lib/canvas/evas_main.c
+++ b/legacy/evas/src/lib/canvas/evas_main.c
@@ -150,9 +150,12 @@ evas_free(Evas *e)
e->obscures = evas_list_remove(e->obscures, e->obscures->data);
}
- e->engine.func->info_free(e, e->engine.info);
- e->engine.func->context_free(e->engine.data.output, e->engine.data.context);
- e->engine.func->output_free(e->engine.data.output);
+ if (e->engine.func)
+ {
+ e->engine.func->info_free(e, e->engine.info);
+ e->engine.func->context_free(e->engine.data.output, e->engine.data.context);
+ e->engine.func->output_free(e->engine.data.output);
+ }
for (i = 0; i < e->modifiers.mod.count; i++)
free(e->modifiers.mod.list[i]);