From f148c21390907a25cd2cc820f6d56a118799a478 Mon Sep 17 00:00:00 2001 From: LamGC Date: Sun, 19 Jun 2022 02:07:24 +0800 Subject: [PATCH] =?UTF-8?q?fix(utils):=20=E4=BF=AE=E5=A4=8D=20deepListFile?= =?UTF-8?q?s=20=E9=94=99=E8=AF=AF=E5=9C=B0=E8=BF=94=E5=9B=9E=E4=BA=86=20nu?= =?UTF-8?q?ll=20=E7=9A=84=E6=83=85=E5=86=B5.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 预期中, deepListFiles 返回 null 与否是与 listFiles 相同的, 当 File 无法访问, 或者不是一个目录的情况下才会返回 null, 但由于语法疏漏, 导致可能出现即使 listFiles 返回 null 时 deepListFiles 也不返回 null 的情况. 现已修复该问题. --- scalabot-app/src/main/kotlin/util/Utils.kt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/scalabot-app/src/main/kotlin/util/Utils.kt b/scalabot-app/src/main/kotlin/util/Utils.kt index 568a7d6..0aa51dc 100644 --- a/scalabot-app/src/main/kotlin/util/Utils.kt +++ b/scalabot-app/src/main/kotlin/util/Utils.kt @@ -25,13 +25,13 @@ internal fun File.deepListFiles( fileFilter: FileFilter? = null, filenameFilter: FilenameFilter? = null ): Array? { - val files = if (fileFilter != null) { + val files = (if (fileFilter != null) { this.listFiles(fileFilter) } else if (filenameFilter != null) { this.listFiles(filenameFilter) } else { this.listFiles() - } ?: return null + }) ?: return null val result = if (addSelf) mutableSetOf(this) else mutableSetOf() for (file in files) {