diff --git a/crates/engine/src/jack/jack_client.rs b/crates/engine/src/jack/jack_client.rs index 5adb9a3e..b1200529 100644 --- a/crates/engine/src/jack/jack_client.rs +++ b/crates/engine/src/jack/jack_client.rs @@ -85,7 +85,11 @@ impl Jack { // implements audio and MIDI input and output on a realtime basis. ClosureProcessHandler::new(Box::new({ let app = app.clone(); - move|c: &_, s: &_|app.write().unwrap().process(c, s) + move|c: &_, s: &_|if let Ok(mut app) = app.write() { + app.process(c, s) + } else { + Control::Quit + } }) as BoxedAudioHandler<'j>), )?; *self.state.write().unwrap() = Active(client);