aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShadowghost <Ghost_of_Stone@web.de>2026-05-04 21:42:31 +0200
committerShadowghost <Ghost_of_Stone@web.de>2026-05-04 21:42:31 +0200
commit0d58c773f9ffa33794bd272d1b0783603e2e46d6 (patch)
treeb8d8c13eaf9448359970d4a6f82ae2a1acd2a15a
parent2365cea6260d9b25ef80a2350caf631020a254cb (diff)
Fix review comments
-rw-r--r--Emby.Server.Implementations/Dto/DtoService.cs8
-rw-r--r--Jellyfin.Server.Implementations/Item/BaseItemRepository.Querying.cs4
-rw-r--r--Jellyfin.Server.Implementations/Item/BaseItemRepository.cs2
3 files changed, 7 insertions, 7 deletions
diff --git a/Emby.Server.Implementations/Dto/DtoService.cs b/Emby.Server.Implementations/Dto/DtoService.cs
index 9f36577410..94e2468719 100644
--- a/Emby.Server.Implementations/Dto/DtoService.cs
+++ b/Emby.Server.Implementations/Dto/DtoService.cs
@@ -205,7 +205,7 @@ namespace Emby.Server.Implementations.Dto
// Batch-fetch MusicArtist lookups across all items to avoid N+1 queries.
IReadOnlyDictionary<string, MusicArtist[]>? artistsBatch = null;
- HashSet<string>? artistNames = null;
+ var artistNames = new HashSet<string>(StringComparer.Ordinal);
foreach (var item in accessibleItems)
{
if (item is IHasArtist hasArtist)
@@ -214,7 +214,7 @@ namespace Emby.Server.Implementations.Dto
{
if (!string.IsNullOrWhiteSpace(name))
{
- (artistNames ??= new HashSet<string>(StringComparer.Ordinal)).Add(name);
+ artistNames.Add(name);
}
}
}
@@ -225,13 +225,13 @@ namespace Emby.Server.Implementations.Dto
{
if (!string.IsNullOrWhiteSpace(name))
{
- (artistNames ??= new HashSet<string>(StringComparer.Ordinal)).Add(name);
+ artistNames.Add(name);
}
}
}
}
- if (artistNames is { Count: > 0 })
+ if (artistNames.Count > 0)
{
artistsBatch = _libraryManager.GetArtists(artistNames.ToArray());
}
diff --git a/Jellyfin.Server.Implementations/Item/BaseItemRepository.Querying.cs b/Jellyfin.Server.Implementations/Item/BaseItemRepository.Querying.cs
index b7b40e76d8..85f49eeadd 100644
--- a/Jellyfin.Server.Implementations/Item/BaseItemRepository.Querying.cs
+++ b/Jellyfin.Server.Implementations/Item/BaseItemRepository.Querying.cs
@@ -145,13 +145,11 @@ public sealed partial class BaseItemRepository
}
// Albums whose Id is the parent of any track matching the user's filter.
- var musicAlbumType = _itemTypeLookup.BaseItemKindNames[BaseItemKind.MusicAlbum]!;
-
var albumIdsWithMatchingTrack = context.AncestorIds
.Join(baseQuery, ai => ai.ItemId, t => t.Id, (ai, _) => ai.ParentItemId);
var topAlbumsQuery = context.BaseItems.AsNoTracking()
- .Where(album => album.Type == musicAlbumType)
+ .Where(album => album.Type == _musicAlbumTypeName)
.Where(album => albumIdsWithMatchingTrack.Contains(album.Id))
.OrderByDescending(album => album.DateCreated)
.ThenByDescending(album => album.Id);
diff --git a/Jellyfin.Server.Implementations/Item/BaseItemRepository.cs b/Jellyfin.Server.Implementations/Item/BaseItemRepository.cs
index 94dedaeba8..e2c77437a8 100644
--- a/Jellyfin.Server.Implementations/Item/BaseItemRepository.cs
+++ b/Jellyfin.Server.Implementations/Item/BaseItemRepository.cs
@@ -39,6 +39,7 @@ public sealed partial class BaseItemRepository
private readonly IItemTypeLookup _itemTypeLookup;
private readonly IServerConfigurationManager _serverConfigurationManager;
private readonly ILogger<BaseItemRepository> _logger;
+ private readonly string _musicAlbumTypeName;
private static readonly IReadOnlyList<ItemValueType> _getAllArtistsValueTypes = [ItemValueType.Artist, ItemValueType.AlbumArtist];
private static readonly IReadOnlyList<ItemValueType> _getArtistValueTypes = [ItemValueType.Artist];
@@ -66,6 +67,7 @@ public sealed partial class BaseItemRepository
_itemTypeLookup = itemTypeLookup;
_serverConfigurationManager = serverConfigurationManager;
_logger = logger;
+ _musicAlbumTypeName = itemTypeLookup.BaseItemKindNames[BaseItemKind.MusicAlbum]!;
}
/// <summary>