diff --git a/src/main/kotlin/html4tree/main.kt b/src/main/kotlin/html4tree/main.kt
index 0972fa2c..4c07ff22 100644
--- a/src/main/kotlin/html4tree/main.kt
+++ b/src/main/kotlin/html4tree/main.kt
@@ -351,16 +351,20 @@ fun process_ignore_file(curr_dir: File, dirFilesNames: Array? = null): S
// 보안 향상: dot-like prefixes and case variants of known sensitive names are excluded.
(dirFilesNames ?: curr_dir.list())?.forEach {
- val normalizedName = it.toLowerCase(java.util.Locale.ROOT)
- if (
- it.isHiddenFile() ||
- normalizedName in Constants.defaultSensitiveFileNamesLowercase ||
- normalizedName.endsWith("~") ||
- Constants.defaultSensitiveExtensions.any { extension ->
- normalizedName.endsWith(extension)
- }
- ) {
+ if (it.isHiddenFile() || it.endsWith("~")) {
files_to_exclude.add(it)
+ } else {
+ // ⚡ Bolt Performance Optimization: Defer expensive string allocation
+ // (toLowerCase) until after evaluating cheap, short-circuiting properties.
+ val normalizedName = it.toLowerCase(java.util.Locale.ROOT)
+ if (
+ normalizedName in Constants.defaultSensitiveFileNamesLowercase ||
+ Constants.defaultSensitiveExtensions.any { extension ->
+ normalizedName.endsWith(extension)
+ }
+ ) {
+ files_to_exclude.add(it)
+ }
}
}