forked from enlightenment/terminology
parent
7f5107b96d
commit
9636a15f22
|
@ -68,7 +68,6 @@ _cb_del(void *data, Evas *e __UNUSED__, Evas_Object *obj __UNUSED__, void *event
|
||||||
{
|
{
|
||||||
Win *wn = data;
|
Win *wn = data;
|
||||||
|
|
||||||
wins = eina_list_remove(wins, wn);
|
|
||||||
// already obj here is deleted - dont do it again
|
// already obj here is deleted - dont do it again
|
||||||
wn->win = NULL;
|
wn->win = NULL;
|
||||||
main_win_free(wn);
|
main_win_free(wn);
|
||||||
|
@ -574,12 +573,17 @@ static void
|
||||||
main_win_free(Win *wn)
|
main_win_free(Win *wn)
|
||||||
{
|
{
|
||||||
Term *term;
|
Term *term;
|
||||||
|
|
||||||
|
wins = eina_list_remove(wins, wn);
|
||||||
EINA_LIST_FREE(wn->terms, term)
|
EINA_LIST_FREE(wn->terms, term)
|
||||||
{
|
{
|
||||||
main_term_free(term);
|
main_term_free(term);
|
||||||
}
|
}
|
||||||
if (wn->win) evas_object_del(wn->win);
|
if (wn->win)
|
||||||
|
{
|
||||||
|
evas_object_event_callback_del_full(wn->win, EVAS_CALLBACK_DEL, _cb_del, wn);
|
||||||
|
evas_object_del(wn->win);
|
||||||
|
}
|
||||||
if (wn->config) config_del(wn->config);
|
if (wn->config) config_del(wn->config);
|
||||||
free(wn);
|
free(wn);
|
||||||
}
|
}
|
||||||
|
@ -1309,8 +1313,9 @@ remote:
|
||||||
|
|
||||||
ipc_shutdown();
|
ipc_shutdown();
|
||||||
|
|
||||||
EINA_LIST_FREE(wins, wn)
|
while (wins)
|
||||||
{
|
{
|
||||||
|
wn = eina_list_data_get(wins);
|
||||||
main_win_free(wn);
|
main_win_free(wn);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue