static void
_store_cache_trim(Elm_Store *st)
{
- while ((st->realized ) &&
+ while ((st->realized) &&
(((int)eina_list_count(st->realized) - st->realized_count)
> st->cache_max))
{
ecore_thread_cancel(st->list_th);
st->list_th = NULL;
}
- eina_list_free(st->realized);
+ st->realized = eina_list_free(st->realized);
while (st->items)
{
Elm_Store_Item *sti = (Elm_Store_Item *)st->items;
- if (sti->eval_job) ecore_job_del(sti->eval_job);
+ if (sti->eval_job)
+ {
+ ecore_job_del(sti->eval_job);
+ sti->eval_job = NULL;
+ }
if (sti->fetch_th)
{
ecore_thread_cancel(sti->fetch_th);
ecore_thread_cancel(st->list_th);
st->list_th = NULL;
}
- eina_list_free(st->realized);
+ st->realized = eina_list_free(st->realized);
item_free = st->item.free;
while (st->items)
{
Elm_Store_Item *sti = (Elm_Store_Item *)st->items;
- if (sti->eval_job) ecore_job_del(sti->eval_job);
+ if (sti->eval_job)
+ {
+ ecore_job_del(sti->eval_job);
+ sti->eval_job = NULL;
+ }
if (sti->fetch_th)
{
ecore_thread_cancel(sti->fetch_th);