lookup duplicate targets and skip new target if already in list.

SVN revision: 65535
This commit is contained in:
Carsten Haitzler 2011-11-23 10:42:58 +00:00
parent f3c5abf999
commit ca2f7a8f77
1 changed files with 9 additions and 8 deletions

View File

@ -7571,6 +7571,15 @@ st_collections_group_programs_program_target(void)
char *copy;
name = parse_str(0);
EINA_LIST_FOREACH(ep->targets, l, etw)
{
if (!strcmp(name, (char*) (etw + 1)))
{
free(name);
return;
}
}
et = mem_alloc(SZ(Edje_Program_Target) + strlen(name) + 1);
ep->targets = eina_list_append(ep->targets, et);
@ -7599,14 +7608,6 @@ st_collections_group_programs_program_target(void)
progname, file_in, line - 1);
exit(-1);
}
EINA_LIST_FOREACH(ep->targets, l, etw)
if (et != etw && strcmp(name, (char*) (etw + 1)) == 0)
{
ERR("%s: Error. parse error %s:%i. "
"target is targetted twice",
progname, file_in, line - 1);
exit(-1);
}
free(name);
}
}