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
This commit is contained in:
Flavio Vinicius Alvares Ceolin 2012-10-02 17:37:48 +00:00
parent 27e48050d4
commit 2bb2e95271
1 changed files with 23 additions and 21 deletions

View File

@ -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);