From 969fa0c8ecc124a1029d4c8e8899d023f96210fb Mon Sep 17 00:00:00 2001 From: Faddix Date: Fri, 28 Aug 2026 15:49:35 +0200 Subject: [PATCH] fix: handle missing AniList media format in episodes --- internal/library/anime/episode.go | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/internal/library/anime/episode.go b/internal/library/anime/episode.go index 5a2ca3fd0..85dad8c84 100644 --- a/internal/library/anime/episode.go +++ b/internal/library/anime/episode.go @@ -148,9 +148,10 @@ func NewEpisode(opts *NewEpisodeOptions) *Episode { if len(entryEp.DisplayTitle) == 0 { switch opts.LocalFile.Metadata.Type { case LocalFileTypeMain: + mediaFormat := opts.Media.GetFormat() if foundAnimapEpisode { entryEp.AniDBEpisode = aniDBEp - if *opts.Media.GetFormat() == anilist.MediaFormatMovie { + if mediaFormat != nil && *mediaFormat == anilist.MediaFormatMovie { entryEp.DisplayTitle = opts.Media.GetPreferredTitle() entryEp.EpisodeTitle = "Complete Movie" } else { @@ -158,7 +159,7 @@ func NewEpisode(opts *NewEpisodeOptions) *Episode { entryEp.EpisodeTitle = episodeMetadata.GetTitle() } } else { - if *opts.Media.GetFormat() == anilist.MediaFormatMovie { + if mediaFormat != nil && *mediaFormat == anilist.MediaFormatMovie { entryEp.DisplayTitle = opts.Media.GetPreferredTitle() entryEp.EpisodeTitle = "Complete Movie" } else { @@ -225,7 +226,8 @@ func NewEpisode(opts *NewEpisodeOptions) *Episode { entryEp.AbsoluteEpisodeNumber = entryEp.EpisodeNumber + opts.AnimeMetadata.GetOffset() switch entryEp.Type { case LocalFileTypeMain: - if *opts.Media.GetFormat() == anilist.MediaFormatMovie { + mediaFormat := opts.Media.GetFormat() + if mediaFormat != nil && *mediaFormat == anilist.MediaFormatMovie { entryEp.DisplayTitle = opts.Media.GetPreferredTitle() entryEp.EpisodeTitle = "Complete Movie" } else { @@ -335,7 +337,8 @@ func NewSimpleEpisode(opts *NewSimpleEpisodeOptions) *Episode { if len(entryEp.DisplayTitle) == 0 { switch opts.LocalFile.Metadata.Type { case LocalFileTypeMain: - if *opts.Media.GetFormat() == anilist.MediaFormatMovie { + mediaFormat := opts.Media.GetFormat() + if mediaFormat != nil && *mediaFormat == anilist.MediaFormatMovie { entryEp.DisplayTitle = opts.Media.GetPreferredTitle() entryEp.EpisodeTitle = "Complete Movie" } else {