From 56f3050c9ad6896217930d8f0b39cd208b408f45 Mon Sep 17 00:00:00 2001 From: Michael Herger Date: Mon, 23 Dec 2024 08:17:34 +0100 Subject: [PATCH 1/2] Don't try to get firmware updates for `squeezelite` players. --- Slim/Utils/Firmware.pm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Slim/Utils/Firmware.pm b/Slim/Utils/Firmware.pm index 2e7085bd3c4..7160f900b52 100644 --- a/Slim/Utils/Firmware.pm +++ b/Slim/Utils/Firmware.pm @@ -93,7 +93,7 @@ and custom.$model.bin in the cachedir. If these exist then these are used in pr sub init_firmware_download { my $model = shift; - return if $model eq 'squeezeplay'; # there is no firmware for the desktop version of squeezeplay! + return if $model =~ /squeeze(?:play|lite)/i; # there is no firmware for the desktop version of squeezeplay! my $version_file = catdir( $updatesDir, "$model.version" ); From ec65e75eeb91eb8ee10e23c71d8b2a513770c953 Mon Sep 17 00:00:00 2001 From: Michael Herger Date: Mon, 23 Dec 2024 08:18:59 +0100 Subject: [PATCH 2/2] Don't convert `%21` to `!` in podcast URLs. That's not the right fix. But I fear fixing this down the rabbit hole of `Schema.pm` and `URI` would have too many side-effects. --- Slim/Plugin/Podcast/ProtocolHandler.pm | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/Slim/Plugin/Podcast/ProtocolHandler.pm b/Slim/Plugin/Podcast/ProtocolHandler.pm index c1e70495a5a..5f68ce77af6 100644 --- a/Slim/Plugin/Podcast/ProtocolHandler.pm +++ b/Slim/Plugin/Podcast/ProtocolHandler.pm @@ -39,6 +39,15 @@ sub scanUrl { my $track = shift; if ($track) { + # XXXX - this doesn't really belong here. But somewhere down the scanUrl() rabbit hole + # we seem to convert %21 with !. Which breaks some podcast URLs. And I don't want + # to open that can of worms right now. - mh + if (new URI($track->url)->path =~ /!/ && new URI($httpUrl)->path !~ /!/) { + my $uri = $track->url; + $uri =~ s/!/%21/g; + $track->url($uri); + } + main::INFOLOG && $log->info("Scanned podcast $url => ", $track->url, " from ($startTime) for title: ", $song->track->title); # use the scanned track to get streamable url, ignore scanned title and coverart