e->destroy_callback = NULL;
pa_idxset_put(m->time_events, e, NULL);
+
return e;
}
static void mainloop_time_free(struct pa_time_event *e) {
assert(e);
+
e->dead = e->mainloop->time_events_scan_dead = 1;
}
int *all = userdata;
assert(e && del && all);
- if (!*all || !e->dead)
+ if (!*all && !e->dead)
return 0;
if (e->destroy_callback)
int *all = userdata;
assert(e && del && all);
- if (!*all || !e->dead)
+ if (!*all && !e->dead)
return 0;
if (e->destroy_callback)
int *all = userdata;
assert(e && del && all);
- if (!*all || !e->dead)
+ if (!*all && !e->dead)
return 0;
if (e->destroy_callback)
pa_idxset_foreach(m->time_events, time_foreach, &all);
if (m->defer_events_scan_dead)
pa_idxset_foreach(m->defer_events, defer_foreach, &all);
+
+ m->io_events_scan_dead = m->time_events_scan_dead = m->defer_events_scan_dead = 0;
}
static void rebuild_pollfds(struct pa_mainloop *m) {