summaryrefslogtreecommitdiff
path: root/src/lib/edje_program.c
diff options
context:
space:
mode:
authorJaehwan Kim <jae.hwan.kim@samsung.com>2012-08-07 18:03:25 +0900
committerJaehwan Kim <jae.hwan.kim@samsung.com>2012-08-07 18:04:03 +0900
commit6319c761a2e2ba50b4c916284cb300f1ff3dd115 (patch)
treeee7983d1f93feeb6125a027ba7444902da2a01b6 /src/lib/edje_program.c
parent9d1ba0d03223a3017d2d0251dcaefb1f66ff879b (diff)
parentab7e8b5240ba7a2a73ed207b1a20834f28dbbd97 (diff)
downloadedje-6319c761a2e2ba50b4c916284cb300f1ff3dd115.tar.gz
edje-6319c761a2e2ba50b4c916284cb300f1ff3dd115.tar.bz2
edje-6319c761a2e2ba50b4c916284cb300f1ff3dd115.zip
EFL core migration @74702
Merge remote-tracking branch 'origin/upstream' into HEAD Conflicts: ChangeLog configure.ac src/bin/edje_cc.c src/bin/edje_cc_handlers.c src/lib/edje_entry.c src/lib/edje_multisense.c
Diffstat (limited to 'src/lib/edje_program.c')
-rw-r--r--src/lib/edje_program.c30
1 files changed, 13 insertions, 17 deletions
diff --git a/src/lib/edje_program.c b/src/lib/edje_program.c
index 648e8ee..3346cf8 100644
--- a/src/lib/edje_program.c
+++ b/src/lib/edje_program.c
@@ -992,7 +992,7 @@ _edje_emit_full(Edje *ed, const char *sig, const char *src, void *data, void (*f
break ;
default:
- ERR("SPANK SPANK SPANK !!!\nYou should never be here !");
+// ERR("SPANK SPANK SPANK !!!\nYou should never be here !");
break;
}
}
@@ -1148,21 +1148,16 @@ _edje_emit_handle(Edje *ed, const char *sig, const char *src,
Edje_Real_Part *rp;
rp = _edje_real_part_get(ed, pr->filter.part ? pr->filter.part : src);
- if (rp && !rp->program)
- exec = (rp->chosen_description->state.name == pr->filter.state);
- }
-
- pr->exec = exec;
-#if 0
- if (exec)
- {
- _edje_program_run(ed, pr, 0, sig, src);
- if (_edje_block_break(ed))
+ if (rp)
{
- goto break_prog;
+ if (rp->program)
+ exec = EINA_FALSE;
+ else
+ exec = (rp->chosen_description->state.name == pr->filter.state);
}
}
-#endif
+
+ pr->exec = exec;
}
EINA_LIST_FOREACH(matches, l, pr)
@@ -1280,7 +1275,7 @@ _edje_emit_cb(Edje *ed, const char *sig, const char *src, Edje_Message_Signal_Da
if (ed->just_added_callbacks)
_edje_callbacks_patterns_clean(ed);
- ed->walking_callbacks = 1;
+ ed->walking_callbacks++;
if (ed->callbacks)
{
@@ -1312,14 +1307,15 @@ _edje_emit_cb(Edje *ed, const char *sig, const char *src, Edje_Message_Signal_Da
{
escb->func(escb->data, ed->obj, sig, src);
if (_edje_block_break(ed))
- goto break_prog;
+ break;
}
}
}
break_prog:
- ed->walking_callbacks = 0;
- if ((ed->delete_callbacks) || (ed->just_added_callbacks))
+ ed->walking_callbacks--;
+ if (!ed->walking_callbacks &&
+ ((ed->delete_callbacks) || (ed->just_added_callbacks)))
{
ed->delete_callbacks = 0;
ed->just_added_callbacks = 0;