Fix MPV command handling after libmpv bump
Some checks failed
Continuous integration / test (push) Has been cancelled

This commit is contained in:
Timothy Z. 2026-05-18 12:26:32 +03:00
parent a4e755d21c
commit 35543aa1c7
2 changed files with 6 additions and 34 deletions

View file

@ -191,7 +191,7 @@ stringable!(FpProp);
pub enum StrProp { pub enum StrProp {
FfmpegVersion, FfmpegVersion,
Hwdec, Hwdec,
InputDefaltBindings, InputDefaultBindings,
InputVoKeyboard, InputVoKeyboard,
Metadata, Metadata,
MpvVersion, MpvVersion,

View file

@ -158,41 +158,13 @@ fn create_message_thread(
}; };
let send_command = |cmd: CmdVal| { let send_command = |cmd: CmdVal| {
let a1; let parts: Vec<String> = cmd.into();
let a2; if let Some((name, args)) = parts.split_first() {
let a3; let args = args.iter().map(String::as_str).collect::<Vec<_>>();
let a4; if let Err(error) = mpv.command(name, &args) {
let (name, args) = match cmd {
CmdVal::Quintuple(name, arg1, arg2, arg3, arg4) => {
a1 = format!(r#""{arg1}""#);
a2 = format!(r#""{arg2}""#);
a3 = format!(r#""{arg3}""#);
a4 = format!(r#""{arg4}""#);
(
name,
vec![a1.as_ref(), a2.as_ref(), a3.as_ref(), a4.as_ref()],
)
}
CmdVal::Quadruple(name, arg1, arg2, arg3) => {
a1 = format!(r#""{arg1}""#);
a2 = format!(r#""{arg2}""#);
a3 = format!(r#""{arg3}""#);
(name, vec![a1.as_ref(), a2.as_ref(), a3.as_ref()])
}
CmdVal::Tripple(name, arg1, arg2) => {
a1 = format!(r#""{arg1}""#);
a2 = format!(r#""{arg2}""#);
(name, vec![a1.as_ref(), a2.as_ref()])
}
CmdVal::Double(name, arg1) => {
a1 = format!(r#""{arg1}""#);
(name, vec![a1.as_ref()])
}
CmdVal::Single((name,)) => (name, vec![]),
};
if let Err(error) = mpv.command(&name.to_string(), &args) {
eprintln!("failed to execute MPV command: '{error:#}'") eprintln!("failed to execute MPV command: '{error:#}'")
} }
}
}; };
fn set_property(name: impl ToString, value: impl SetData, mpv: &Mpv) { fn set_property(name: impl ToString, value: impl SetData, mpv: &Mpv) {