From f0a5557e603e31a53117c40426237d2340142bc2 Mon Sep 17 00:00:00 2001 From: Tom Briden Date: Sat, 30 Oct 2021 17:16:29 +0100 Subject: [PATCH] Fix storing covers for local manga (#6127) getCoverFile only returns a cover if it already exists, meaning the block of code to write it from the inputstream never executes. If getCoverFile returns null, then use previous behaviour of setting it to cover.jpg so that if the file doesn't exist it's created --- .../main/java/eu/kanade/tachiyomi/source/LocalSource.kt | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/eu/kanade/tachiyomi/source/LocalSource.kt b/app/src/main/java/eu/kanade/tachiyomi/source/LocalSource.kt index ac71955094..d7c641b059 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/source/LocalSource.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/source/LocalSource.kt @@ -39,6 +39,7 @@ class LocalSource(private val context: Context) : CatalogueSource { private val SUPPORTED_ARCHIVE_TYPES = setOf("zip", "rar", "cbr", "cbz", "epub") + private const val COVER_NAME = "cover.jpg" private val LATEST_THRESHOLD = TimeUnit.MILLISECONDS.convert(7, TimeUnit.DAYS) fun updateCover(context: Context, manga: SManga, input: InputStream): File? { @@ -47,9 +48,11 @@ class LocalSource(private val context: Context) : CatalogueSource { input.close() return null } - val cover = getCoverFile(File("${dir.absolutePath}/${manga.url}")) - - if (cover != null && cover.exists()) { + var cover = getCoverFile(File("${dir.absolutePath}/${manga.url}")) + if (cover == null) { + cover = File("${dir.absolutePath}/${manga.url}", COVER_NAME) + } + if (cover != null && !cover.exists()) { // It might not exist if using the external SD card cover.parentFile?.mkdirs() input.use {