Fix non-closed readers

(cherry picked from commit 67143d5d08f607959bf7bfc8bff4f9f7e6ae1db7)

IJ-CR-122485

GitOrigin-RevId: cf14cb341278a6fb02690a5108ace56c34b450f9
This commit is contained in:
alexey.afanasiev
2023-12-18 01:16:48 +01:00
committed by intellij-monorepo-bot
parent bb0a671865
commit 04b1b89032
2 changed files with 6 additions and 3 deletions

View File

@@ -129,8 +129,9 @@ class YamlInspectionProfileImpl private constructor(override val profileName: St
} }
return configFile.reader().use { reader ->
return loadFrom(configFile.reader(), includeProvider, toolsSupplier, profileManager) loadFrom(reader, includeProvider, toolsSupplier, profileManager)
}
} }
private fun findBaseProfile(profileManager: InspectionProfileManager, profileName: String?): InspectionProfileImpl { private fun findBaseProfile(profileManager: InspectionProfileManager, profileName: String?): InspectionProfileImpl {

View File

@@ -70,7 +70,9 @@ private fun readRaw(reader: Reader, includeReaders: (Path) -> Reader): Map<Strin
val includedConfigs = (rawConfig["include"] as? List<*>)?.filterIsInstance(String::class.java).orEmpty().map { Paths.get(it) } val includedConfigs = (rawConfig["include"] as? List<*>)?.filterIsInstance(String::class.java).orEmpty().map { Paths.get(it) }
return includedConfigs.fold(rawConfig) { accumulator, path -> return includedConfigs.fold(rawConfig) { accumulator, path ->
val includedYaml = readRaw(includeReaders.invoke(path)) { includeReaders.invoke(path.resolveSibling(it)) } val includedYaml = includeReaders.invoke(path).use { includeReader ->
readRaw(includeReader) { includeReaders.invoke(path.resolveSibling(it)) }
}
merge(accumulator, includedYaml.filterKeys { field -> field in FIELDS_TO_MERGE }) merge(accumulator, includedYaml.filterKeys { field -> field in FIELDS_TO_MERGE })
} }
} }