From c286fe48c06fddb8d20553ef64d1910c5826b79f Mon Sep 17 00:00:00 2001 From: Mike Blumenkrantz Date: Fri, 6 May 2016 14:35:16 -0400 Subject: [PATCH] prune uuid remembers on clean startup ensure that stale sessions are destroyed regularly --- src/bin/e_remember.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/bin/e_remember.c b/src/bin/e_remember.c index e0fec5161..7fcdea399 100644 --- a/src/bin/e_remember.c +++ b/src/bin/e_remember.c @@ -36,13 +36,13 @@ static Eina_List *remember_idler_list = NULL; EINTERN int e_remember_init(E_Startup_Mode mode) { - Eina_List *l = NULL; + Eina_List *ll, *l = NULL; E_Remember *rem; E_Client_Hook *h; if (mode == E_STARTUP_START) { - EINA_LIST_FOREACH(e_config->remembers, l, rem) + EINA_LIST_FOREACH_SAFE(e_config->remembers, l, ll, rem) { if ((rem->apply & E_REMEMBER_APPLY_RUN) && (rem->prop.command)) { @@ -55,6 +55,11 @@ e_remember_init(E_Startup_Mode mode) rem->prop.command); } } + if (rem->apply & E_REMEMBER_APPLY_UUID) + { + e_config->remembers = eina_list_remove_list(e_config->remembers, l); + _e_remember_free(rem); + } } } E_EVENT_REMEMBER_UPDATE = ecore_event_type_new();