From 511a9a240651e3fc69d947e134879735b0cf595f Mon Sep 17 00:00:00 2001 From: Carsten Haitzler Date: Fri, 6 Feb 2004 03:40:15 +0000 Subject: [PATCH] a possible leak plugged. SVN revision: 8825 --- legacy/edje/src/lib/edje_program.c | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/legacy/edje/src/lib/edje_program.c b/legacy/edje/src/lib/edje_program.c index 3a518e15b3..540d9f126e 100644 --- a/legacy/edje/src/lib/edje_program.c +++ b/legacy/edje/src/lib/edje_program.c @@ -263,7 +263,11 @@ _edje_program_run_iterate(Edje_Running_Program *runp, double tim) _edje_animators = evas_list_remove(_edje_animators, ed); } _edje_emit(ed, "program,stop", runp->program->name); - if (_edje_block_break(ed)) goto break_prog; + if (_edje_block_break(ed)) + { + if (!ed->walking_actions) free(runp); + goto break_prog; + } if (runp->program->after >= 0) { Edje_Program *pr; @@ -271,7 +275,11 @@ _edje_program_run_iterate(Edje_Running_Program *runp, double tim) pr = evas_list_nth(ed->collection->programs, runp->program->after); if (pr) _edje_program_run(ed, pr, 0); - if (_edje_block_break(ed)) goto break_prog; + if (_edje_block_break(ed)) + { + if (!ed->walking_actions) free(runp); + goto break_prog; + } } _edje_thaw(ed); _edje_unref(ed);