From 2cd8f841d15d29a8356b6b237e3f21a0b0925bb6 Mon Sep 17 00:00:00 2001 From: ImportTaste <53661808+ImportTaste@users.noreply.github.com> Date: Tue, 24 Oct 2023 13:04:25 -0500 Subject: [PATCH] split lines only once --- src/shims.rs | 30 ++++++++++-------------------- 1 file changed, 10 insertions(+), 20 deletions(-) diff --git a/src/shims.rs b/src/shims.rs index 45dd318..c3149fa 100644 --- a/src/shims.rs +++ b/src/shims.rs @@ -63,26 +63,16 @@ fn parse_shim_file(shim_path: &Path) -> Result, Error> { .lines() .filter(|l| !l.trim().is_empty()) { - let mut components = line.split("="); - let key = match components.next() { - Some(k) => k.trim(), - None => { - return Err(Error::new( - ErrorKind::InvalidData, - format!("invalid line in shim file: {}", line), - )); - } - }; - let value = match components.next() { - Some(v) => v.trim(), - None => { - return Err(Error::new( - ErrorKind::InvalidData, - format!("invalid line in shim file: {}", line), - )); - } - }; - kvs.insert(key.to_string(), value.to_string()); + if let Some((key, value)) = line.split_once("=") { + let key = key.trim(); + let value = value.trim(); + kvs.insert(key.to_string(), value.to_string()); + } else { + return Err(Error::new( + ErrorKind::InvalidData, + format!("invalid line in shim file: {}", line), + )); + } } Ok(kvs)