diff --git a/src/scan_manager/menu.rs b/src/scan_manager/menu.rs index ed8834e..04751c4 100644 --- a/src/scan_manager/menu.rs +++ b/src/scan_manager/menu.rs @@ -190,7 +190,11 @@ impl Menu { if value.contains('-') { // range of two values, needs further processing - let range: Vec = value.split('-').map(|s| self.str_to_usize(s)).collect(); + let range: Vec = value + .split('-') + .map(|s| self.str_to_usize(s)) + .filter(|m| *m != 0) + .collect(); if range.len() != 2 { // expecting [1, 4] or similar, if a 0 was used, we'd be left with a vec of size 1 @@ -206,6 +210,10 @@ impl Menu { } }); } else { + if value.is_empty() { + continue; + } + let value = self.str_to_usize(value); if !nums.contains(&value) { diff --git a/src/scan_manager/scan.rs b/src/scan_manager/scan.rs index 84e09ad..82426cd 100644 --- a/src/scan_manager/scan.rs +++ b/src/scan_manager/scan.rs @@ -39,6 +39,7 @@ pub struct FeroxScan { pub scan_type: ScanType, /// The order in which the scan was received + #[allow(dead_code)] // not entirely sure this isn't used somewhere pub(crate) scan_order: ScanOrder, /// Number of requests to populate the progress bar with diff --git a/src/scan_manager/tests.rs b/src/scan_manager/tests.rs index ce0c81f..88626c4 100644 --- a/src/scan_manager/tests.rs +++ b/src/scan_manager/tests.rs @@ -668,11 +668,7 @@ fn menu_get_command_input_from_user_returns_cancel() { assert!(matches!(result, MenuCmd::Cancel(_, _))); if let MenuCmd::Cancel(canx_list, ret_force) = result { - if idx == 0 { - assert!(canx_list.is_empty()); - } else { - assert_eq!(canx_list, vec![idx]); - } + assert_eq!(canx_list, vec![idx]); assert_eq!(force, ret_force); } }