mirror of
https://github.com/arabianq/pipewire-soundpad.git
synced 2026-04-28 06:21:23 +00:00
fix(gui): remove unwrap() calls in input handling to prevent potential panics (#72)
Replaced `.chars().next().unwrap()` with `.chars().next().is_some_and(...)` in `chord_from_event` and `parse_chord` functions in `src/gui/input.rs`. This ensures that even if the string is empty, the application will not panic, adhering to the project's safety guidelines and resolving a potential security vulnerability. Co-authored-by: google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com>
This commit is contained in:
committed by
GitHub
parent
78e0a133b6
commit
498c09eb50
+2
-2
@@ -9,7 +9,7 @@ use std::path::PathBuf;
|
||||
fn chord_from_event(modifiers: &Modifiers, key: &Key) -> Option<String> {
|
||||
let key_name = key.name();
|
||||
let is_valid = (key_name.len() == 1
|
||||
&& key_name.chars().next().unwrap().is_ascii_alphanumeric())
|
||||
&& key_name.chars().next().is_some_and(|c| c.is_ascii_alphanumeric()))
|
||||
|| (key_name.starts_with('F')
|
||||
&& key_name.len() > 1
|
||||
&& key_name[1..].chars().all(|c| c.is_ascii_digit()));
|
||||
@@ -60,7 +60,7 @@ pub fn parse_chord(chord: &str) -> Option<(Modifiers, Key)> {
|
||||
|
||||
let key_name = parts[parts.len() - 1];
|
||||
let is_valid = (key_name.len() == 1
|
||||
&& key_name.chars().next().unwrap().is_ascii_alphanumeric())
|
||||
&& key_name.chars().next().is_some_and(|c| c.is_ascii_alphanumeric()))
|
||||
|| (key_name.starts_with('F')
|
||||
&& key_name.len() > 1
|
||||
&& key_name[1..].chars().all(|c| c.is_ascii_digit()));
|
||||
|
||||
Reference in New Issue
Block a user