From 2bb2e952719a1cf7a0c07b56d263de87b90c3353 Mon Sep 17 00:00:00 2001 From: Flavio Vinicius Alvares Ceolin Date: Tue, 2 Oct 2012 17:37:48 +0000 Subject: [PATCH] edje_codegen: Fixing a small problem with programs Generating code even when there is no signal and/or source in a program with SIGNAL_EMIT action. SVN revision: 77330 --- legacy/edje/src/bin/edje_codegen.c | 44 ++++++++++++++++-------------- 1 file changed, 23 insertions(+), 21 deletions(-) diff --git a/legacy/edje/src/bin/edje_codegen.c b/legacy/edje/src/bin/edje_codegen.c index 61b01a37b9..2504b97ff0 100644 --- a/legacy/edje/src/bin/edje_codegen.c +++ b/legacy/edje/src/bin/edje_codegen.c @@ -950,28 +950,7 @@ _parse_programs(Evas_Object *ed) continue; } - signal = edje_edit_program_signal_get(ed, name); - if (!signal) - { - free(apiname); - continue; - } - - source = edje_edit_program_source_get(ed, name); - if (!source) - { - free(apiname); - edje_edit_string_free(signal); - continue; - } - description = edje_edit_program_api_description_get(ed, name); - if (!_write_program_emit(apiname, source, signal, description)) - { - ret = EINA_FALSE; - break; - } - type = edje_edit_program_action_get(ed, name); if (type == EDJE_ACTION_TYPE_SIGNAL_EMIT) { @@ -991,6 +970,29 @@ _parse_programs(Evas_Object *ed) edje_edit_string_free(str2); } + signal = edje_edit_program_signal_get(ed, name); + if (!signal) + { + free(apiname); + edje_edit_string_free(description); + continue; + } + + source = edje_edit_program_source_get(ed, name); + if (!source) + { + free(apiname); + edje_edit_string_free(signal); + edje_edit_string_free(description); + continue; + } + + if (!_write_program_emit(apiname, source, signal, description)) + { + ret = EINA_FALSE; + break; + } + edje_edit_string_free(description); edje_edit_string_free(signal); edje_edit_string_free(source);