void
_edje_del(Edje *ed)
{
+ Edje_Running_Program *runp;
+ Edje_Pending_Program *pp;
+ Edje_Signal_Callback *escb;
+ Edje_Color_Class *cc;
+ Edje_Text_Class *tc;
+ Edje_Text_Insert_Filter_Callback *cb;
+
if (ed->processing_messages)
{
ed->delete_me = 1;
{
_edje_animators = eina_list_remove(_edje_animators, ed);
}
- while (ed->actions)
- {
- Edje_Running_Program *runp;
-
- runp = eina_list_data_get(ed->actions);
- ed->actions = eina_list_remove(ed->actions, runp);
- free(runp);
- }
- while (ed->pending_actions)
- {
- Edje_Pending_Program *pp;
-
- pp = eina_list_data_get(ed->pending_actions);
- ed->pending_actions = eina_list_remove(ed->pending_actions, pp);
- free(pp);
- }
- while (ed->callbacks)
+ EINA_LIST_FREE(ed->actions, runp)
+ free(runp);
+ EINA_LIST_FREE(ed->pending_actions, pp)
+ free(pp);
+ EINA_LIST_FREE(ed->callbacks, escb)
{
- Edje_Signal_Callback *escb;
-
- escb = eina_list_data_get(ed->callbacks);
- ed->callbacks = eina_list_remove(ed->callbacks, escb);
if (escb->signal) eina_stringshare_del(escb->signal);
if (escb->source) eina_stringshare_del(escb->source);
free(escb);
}
- while (ed->color_classes)
+ EINA_LIST_FREE(ed->color_classes, cc)
{
- Edje_Color_Class *cc;
-
- cc = eina_list_data_get(ed->color_classes);
- ed->color_classes = eina_list_remove(ed->color_classes, cc);
if (cc->name) eina_stringshare_del(cc->name);
free(cc);
}
- while (ed->text_classes)
+ EINA_LIST_FREE(ed->text_classes, tc)
{
- Edje_Text_Class *tc;
-
- tc = eina_list_data_get(ed->text_classes);
- ed->text_classes = eina_list_remove(ed->text_classes, tc);
if (tc->name) eina_stringshare_del(tc->name);
if (tc->font) eina_stringshare_del(tc->font);
free(tc);
}
- while (ed->text_insert_filter_callbacks)
+ EINA_LIST_FREE(ed->text_insert_filter_callbacks, cb)
{
- Edje_Text_Insert_Filter_Callback *cb;
-
- cb = eina_list_data_get(ed->text_insert_filter_callbacks);
- ed->text_insert_filter_callbacks = eina_list_remove(ed->text_insert_filter_callbacks, cb);
eina_stringshare_del(cb->part);
free(cb);
}