fix: panic when fed non alphanumeric tracklist name

This commit is contained in:
Tal 2026-02-25 19:51:49 +01:00
parent 87c4007462
commit 3f39af33e3

View File

@ -333,13 +333,20 @@ impl Server {
format!("lowfi.{}.instance{}", state.tracklist, process::id()) format!("lowfi.{}.instance{}", state.tracklist, process::id())
}; };
// Filtered track list, since MPRIS objects don't like non-alphanumeric characters.
let tracklist: String = state
.tracklist
.chars()
.filter(|c| c.is_ascii_lowercase())
.collect();
let server = mpris_server::Server::new( let server = mpris_server::Server::new(
&suffix, &suffix,
Player { Player {
sender: Sender::new(sender), sender: Sender::new(sender),
sink: state.sink, sink: state.sink,
current: ArcSwap::new(Arc::new(state.current)), current: ArcSwap::new(Arc::new(state.current)),
list: state.tracklist, list: tracklist,
}, },
) )
.await?; .await?;