- i = pa_xmalloc(sizeof(struct once_info));
- i->core = c;
- i->index = m->index;
- pa_mainloop_api_once(c->mainloop, module_unload_once_callback, i);
+}
+
+void pa_module_unload_request(struct pa_module *m) {
+ assert(m);
+
+ m->unload_requested = 1;
+
+ if (!m->core->module_defer_unload_event)
+ m->core->module_defer_unload_event = m->core->mainloop->defer_new(m->core->mainloop, defer_cb, m->core);
+
+ m->core->mainloop->defer_enable(m->core->module_defer_unload_event, 1);