use FOREACH_SAFE when walking client list during logout

internal clients can be instantly destroyed and removed from the list
This commit is contained in:
Mike Blumenkrantz 2017-05-30 10:41:05 -04:00
parent 239101d95f
commit 1f2b95ae4f
1 changed files with 2 additions and 2 deletions

View File

@ -745,14 +745,14 @@ _e_sys_logout_after(void)
static void
_e_sys_logout_begin(E_Sys_Action a_after, Eina_Bool raw)
{
const Eina_List *l;
const Eina_List *l, *ll;
E_Client *ec;
stopping = 1;
/* start logout - at end do the a_after action */
_e_sys_action_after = a_after;
_e_sys_action_after_raw = raw;
EINA_LIST_FOREACH(e_comp->clients, l, ec)
EINA_LIST_FOREACH_SAFE(e_comp->clients, l, ll, ec)
{
e_client_act_close_begin(ec);
}