INNER CODE UNIT · Rust
get_dbus_worker
Rikorose/DeepFilterNet · ladspa/src/lib.rs:518
fn get_dbus_worker(
tx: ControlProd,
init: Arc<Event>,
done: Arc<Event>,
id: String,
) -> impl FnMut() {
move || {
log::debug!("{id} | Initializing dbus server");
let done_listener = done.clone().listen();
let control = DfDbusControl { tx: tx.clone() };
let con = build_dbus_session(control).expect("Failed to init dbus session");
init.notify(1); // Notify caller that dbus server has been initialized.
done_listener.wait();
con.release_name(DBUS_NAME).expect("Failed to release dbus name");
log::debug!("{id} | Got done notification. Releasing dbus name");
}
}