From c9624e75501132aaae20a4c8380b4ab29e55f515 Mon Sep 17 00:00:00 2001 From: Bogdan Date: Wed, 8 May 2024 04:05:15 +0300 Subject: [PATCH] Fixed: Ignore invalid movie tags when writing XBMC metadata Co-authored-by: Mark McDowall Fixes #9984 --- .../Extras/Metadata/Consumers/Xbmc/XbmcMetadata.cs | 2 +- src/NzbDrone.Core/Tags/TagRepository.cs | 7 +++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/src/NzbDrone.Core/Extras/Metadata/Consumers/Xbmc/XbmcMetadata.cs b/src/NzbDrone.Core/Extras/Metadata/Consumers/Xbmc/XbmcMetadata.cs index e135ad715..51c21aa22 100644 --- a/src/NzbDrone.Core/Extras/Metadata/Consumers/Xbmc/XbmcMetadata.cs +++ b/src/NzbDrone.Core/Extras/Metadata/Consumers/Xbmc/XbmcMetadata.cs @@ -294,7 +294,7 @@ namespace NzbDrone.Core.Extras.Metadata.Consumers.Xbmc if (movie.Tags.Any()) { - var tags = _tagRepository.Get(movie.Tags); + var tags = _tagRepository.GetTags(movie.Tags); foreach (var tag in tags) { diff --git a/src/NzbDrone.Core/Tags/TagRepository.cs b/src/NzbDrone.Core/Tags/TagRepository.cs index 037027dea..1a54babdf 100644 --- a/src/NzbDrone.Core/Tags/TagRepository.cs +++ b/src/NzbDrone.Core/Tags/TagRepository.cs @@ -1,4 +1,5 @@ using System; +using System.Collections.Generic; using System.Linq; using NzbDrone.Core.Datastore; using NzbDrone.Core.Messaging.Events; @@ -9,6 +10,7 @@ namespace NzbDrone.Core.Tags { Tag GetByLabel(string label); Tag FindByLabel(string label); + List GetTags(HashSet tagIds); } public class TagRepository : BasicRepository, ITagRepository @@ -34,5 +36,10 @@ namespace NzbDrone.Core.Tags { return Query(x => x.Label == label).SingleOrDefault(); } + + public List GetTags(HashSet tagIds) + { + return Query(t => tagIds.Contains(t.Id)); + } } }