From 88e40cd27a5a9ec3d3bd84973f75d782dea5bc5a Mon Sep 17 00:00:00 2001 From: 409 Date: Sat, 29 Jun 2024 13:41:59 +0200 Subject: [PATCH] fix: crash when an instruction is issed while there are no sink inputs --- src/mixer.rs | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/mixer.rs b/src/mixer.rs index aaa698f..e9f2643 100644 --- a/src/mixer.rs +++ b/src/mixer.rs @@ -303,6 +303,12 @@ impl Mixer { pub fn select_next(&mut self) { let mut index_lock = self.selected_index.lock().unwrap(); + let sink_input_len = self.sink_inputs.len(); + if sink_input_len == 0 { + *index_lock = None; + return; + } + match *index_lock { Some(current_index) => { let new_index: usize = @@ -328,6 +334,12 @@ impl Mixer { pub fn select_previous(&mut self) { let mut index_lock = self.selected_index.lock().unwrap(); + let sink_input_len = self.sink_inputs.len(); + if sink_input_len == 0 { + *index_lock = None; + return; + } + match *index_lock { Some(current_index) => { let new_index: usize = match current_index.overflowing_sub(1) {