diff --git a/Cargo.lock b/Cargo.lock index d197aa1..5a7410f 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -90,7 +90,7 @@ checksum = "d75a2a4b1b190afb6f5425f10f6a8f959d2ea0b9c2b1d79553551850539e4674" [[package]] name = "itunesdb" -version = "0.1.13" +version = "0.1.15" dependencies = [ "bincode", "env_logger", diff --git a/Cargo.toml b/Cargo.toml index be135e5..cf74197 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "itunesdb" -version = "0.1.14" +version = "0.1.15" edition = "2021" authors = ["alterwain"] diff --git a/src/xobjects.rs b/src/xobjects.rs index bec2c86..a221777 100644 --- a/src/xobjects.rs +++ b/src/xobjects.rs @@ -93,13 +93,13 @@ impl XPlaylist { } fn update_arg(&mut self, id: u32, val: String) { - self.args.retain_mut(|t| { + self.args.retain(|t| { if let XPlArgument::String(s) = t { if s.arg_type == id { - return true; + return false; } } - false + true }); self.args.push(XPlArgument::String(XArgument { arg_type: id, val })); } @@ -156,14 +156,11 @@ impl XTrackItem { } fn get_arg(&self, id: u32) -> String { - for t in self.args.iter() { - println!("{} -> {}", t.arg_type, t.val); - } - self.args.iter().find(|t| t.arg_type == id).map_or("none".to_string(), |t| t.val.clone()) + self.args.iter().find(|t| t.arg_type == id).map_or(String::new(), |t| t.val.clone()) } fn update_arg(&mut self, id: u32, val: String) { - self.args.retain(|t| t.arg_type == id); + self.args.retain(|t| t.arg_type != id); self.args.push(XArgument { arg_type: id, val}); } }