aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortheguymadmax <theguymadmax@proton.me>2026-08-26 21:51:31 -0400
committertheguymadmax <theguymadmax@proton.me>2026-08-26 21:51:31 -0400
commit6da85a0aaad557bc220f1a017a52dbc3f04e9a59 (patch)
treec8e45680efce9df8988dce041aca13d7c1b0b245
parent1cc490fb190d01c34c3c7bed0f9f8df6e122ade0 (diff)
Fix ParentId for episodes in virtual seasons
-rw-r--r--MediaBrowser.Providers/TV/SeriesMetadataService.cs7
1 files changed, 6 insertions, 1 deletions
diff --git a/MediaBrowser.Providers/TV/SeriesMetadataService.cs b/MediaBrowser.Providers/TV/SeriesMetadataService.cs
index b350f482c3..803fab538f 100644
--- a/MediaBrowser.Providers/TV/SeriesMetadataService.cs
+++ b/MediaBrowser.Providers/TV/SeriesMetadataService.cs
@@ -364,7 +364,7 @@ public class SeriesMetadataService : MetadataService<Series, SeriesInfo>
foreach (var episode in episodes)
{
var season = seasons.FirstOrDefault(i => i.IndexNumber == episode.ParentIndexNumber);
- if (season is null || episode.SeasonId.Equals(season.Id))
+ if (season is null || (episode.SeasonId.Equals(season.Id) && episode.ParentId.Equals(season.Id)))
{
continue;
}
@@ -372,6 +372,11 @@ public class SeriesMetadataService : MetadataService<Series, SeriesInfo>
// Assign the correct season id and name to episode.
episode.SeasonId = season.Id;
episode.SeasonName = season.Name;
+
+ // We need to set ParentId here for episodes in virtual seasons (e.g., flat structures), otherwise it retains the
+ // ParentId from the series.
+ episode.SetParent(season);
+
await episode.UpdateToRepositoryAsync(ItemUpdateType.MetadataImport, cancellationToken).ConfigureAwait(false);
}
}