aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Providers
diff options
context:
space:
mode:
authorShadowghost <Shadowghost@users.noreply.github.com>2026-09-15 11:16:13 -0400
committerCody Robibero <cody@robibe.ro>2026-09-15 11:16:13 -0400
commite03fd264ea48dfd5b618ef4f8751d44beb745bd5 (patch)
tree99205aab25bc739870aa111075f78a9710cb3d8e /MediaBrowser.Providers
parent9266d45b5606731767359d44be0cabc4b65e5ada (diff)
Backport pull request #17971 from jellyfin/release-12.z
Skip empty ZIP comments for ComicBookInfo Original-merge: bdfdef381823eaa07dd75a5f9c8697955c0b0211 Merged-by: crobibero <cody@robibe.ro> Backported-by: Cody Robibero <cody@robibe.ro>
Diffstat (limited to 'MediaBrowser.Providers')
-rw-r--r--MediaBrowser.Providers/Books/ComicBookInfo/ComicBookInfoProvider.cs11
1 files changed, 9 insertions, 2 deletions
diff --git a/MediaBrowser.Providers/Books/ComicBookInfo/ComicBookInfoProvider.cs b/MediaBrowser.Providers/Books/ComicBookInfo/ComicBookInfoProvider.cs
index a06de95fce..61615b288a 100644
--- a/MediaBrowser.Providers/Books/ComicBookInfo/ComicBookInfoProvider.cs
+++ b/MediaBrowser.Providers/Books/ComicBookInfo/ComicBookInfoProvider.cs
@@ -54,9 +54,10 @@ public class ComicBookInfoProvider : IComicProvider
var archive = await ZipArchive.CreateAsync(stream, ZipArchiveMode.Read, false, null, cancellationToken).ConfigureAwait(false);
await using (archive.ConfigureAwait(false))
{
- if (archive.Comment is null)
+ // ZipArchive.Comment is an empty string, not null, when the archive has no comment
+ if (string.IsNullOrWhiteSpace(archive.Comment))
{
- _logger.LogInformation("missing ComicBookInfo in archive comment: {Path}", info.Path);
+ _logger.LogDebug("missing ComicBookInfo in archive comment: {Path}", info.Path);
return new MetadataResult<Book> { HasMetadata = false };
}
@@ -71,6 +72,12 @@ public class ComicBookInfoProvider : IComicProvider
}
}
}
+ catch (JsonException ex)
+ {
+ // the archive comment is not reserved for ComicBookInfo, so any other content is not an error
+ _logger.LogDebug("archive comment is not valid ComicBookInfo metadata: {Path}: {Message}", info.Path, ex.Message);
+ return new MetadataResult<Book> { HasMetadata = false };
+ }
catch (Exception ex)
{
_logger.LogError(ex, "failed to load ComicBookInfo metadata: {Path}", info.Path);