mirror of
https://github.com/SoPat712/allstarr.git
synced 2026-02-09 23:55:10 -05:00
Fix null boolean error and playlist count showing 0 after restart
- Added all required boolean fields to MediaSources (IsRemote, IsInfiniteStream, RequiresOpening, etc) - UpdateSpotifyPlaylistCounts now loads from file cache if Redis is empty - This fixes 'type Null is not a subtype of type bool' error in Finamp - Playlist counts now show correctly even after container restart
This commit is contained in:
@@ -2744,7 +2744,7 @@ public class JellyfinController : ControllerBase
|
||||
var matchedTracksKey = $"spotify:matched:ordered:{playlistName}";
|
||||
var matchedTracks = await _cache.GetAsync<List<MatchedTrack>>(matchedTracksKey);
|
||||
|
||||
_logger.LogInformation("Cache lookup for {Key}: {Count} matched tracks",
|
||||
_logger.LogDebug("Cache lookup for {Key}: {Count} matched tracks",
|
||||
matchedTracksKey, matchedTracks?.Count ?? 0);
|
||||
|
||||
// Fallback to legacy cache format
|
||||
@@ -2759,7 +2759,22 @@ public class JellyfinController : ControllerBase
|
||||
Position = i,
|
||||
MatchedSong = s
|
||||
}).ToList();
|
||||
_logger.LogInformation("Loaded {Count} tracks from legacy cache", matchedTracks.Count);
|
||||
_logger.LogDebug("Loaded {Count} tracks from legacy cache", matchedTracks.Count);
|
||||
}
|
||||
}
|
||||
|
||||
// Try loading from file cache if Redis is empty
|
||||
if (matchedTracks == null || matchedTracks.Count == 0)
|
||||
{
|
||||
var fileItems = await LoadPlaylistItemsFromFile(playlistName);
|
||||
if (fileItems != null && fileItems.Count > 0)
|
||||
{
|
||||
_logger.LogInformation("💿 Loaded {Count} playlist items from file cache for count update", fileItems.Count);
|
||||
// Use file cache count directly
|
||||
itemDict["ChildCount"] = fileItems.Count;
|
||||
modified = true;
|
||||
updatedItems.Add(itemDict);
|
||||
continue;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -319,7 +319,14 @@ public class JellyfinResponseBuilder
|
||||
["Protocol"] = "File",
|
||||
["SupportsDirectStream"] = true,
|
||||
["SupportsTranscoding"] = true,
|
||||
["SupportsDirectPlay"] = true
|
||||
["SupportsDirectPlay"] = true,
|
||||
["IsRemote"] = false,
|
||||
["IsInfiniteStream"] = false,
|
||||
["RequiresOpening"] = false,
|
||||
["RequiresClosing"] = false,
|
||||
["RequiresLooping"] = false,
|
||||
["SupportsProbing"] = true,
|
||||
["ReadAtNativeFramerate"] = false
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user