From d0f79ca473ea8bd7b37535c54476d852ec6ca9fc Mon Sep 17 00:00:00 2001 From: Edge At Zero <56199867+EdgeAtZero@users.noreply.github.com> Date: Tue, 27 May 2025 08:45:20 +0800 Subject: [PATCH] Fix: Validate zipEntry directories during extension asset decompression (#1407) --- .../kotlin/suwayomi/tachidesk/manga/impl/extension/Extension.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/server/src/main/kotlin/suwayomi/tachidesk/manga/impl/extension/Extension.kt b/server/src/main/kotlin/suwayomi/tachidesk/manga/impl/extension/Extension.kt index c53d0ef0..567728be 100644 --- a/server/src/main/kotlin/suwayomi/tachidesk/manga/impl/extension/Extension.kt +++ b/server/src/main/kotlin/suwayomi/tachidesk/manga/impl/extension/Extension.kt @@ -240,7 +240,7 @@ object Extension { ZipInputStream(apkFile.inputStream()).use { zipInputStream -> var zipEntry = zipInputStream.nextEntry while (zipEntry != null) { - if (zipEntry.name.startsWith("assets/")) { + if (zipEntry.name.startsWith("assets/") && !zipEntry.isDirectory) { val assetFile = File(assetsFolder, zipEntry.name) assetFile.parentFile.mkdirs() FileOutputStream(assetFile).use { outputStream ->