From fb6cf022fcddeb0215c58485f8964367a0efbeac Mon Sep 17 00:00:00 2001 From: Alexander Gorshenev Date: Wed, 22 May 2019 04:22:26 +0300 Subject: [PATCH] Flush message collector before exiting process --- .../org/jetbrains/kotlin/backend/konan/KonanConfig.kt | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/KonanConfig.kt b/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/KonanConfig.kt index 5b596ab9756..d4ac4bfb7c2 100644 --- a/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/KonanConfig.kt +++ b/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/KonanConfig.kt @@ -10,6 +10,7 @@ import org.jetbrains.kotlin.cli.common.CLIConfigurationKeys import org.jetbrains.kotlin.cli.common.config.kotlinSourceRoots import org.jetbrains.kotlin.cli.common.messages.CompilerMessageSeverity import org.jetbrains.kotlin.cli.common.messages.CompilerMessageSeverity.* +import org.jetbrains.kotlin.cli.common.messages.GroupingMessageCollector import org.jetbrains.kotlin.config.CommonConfigurationKeys import org.jetbrains.kotlin.config.CompilerConfiguration import org.jetbrains.kotlin.descriptors.ModuleDescriptor @@ -83,11 +84,13 @@ class KonanConfig(val project: Project, val configuration: CompilerConfiguration private val repositories = configuration.getList(KonanConfigKeys.REPOSITORIES) private val resolverLogger = object : Logger { - override fun warning(message: String)= configuration.report(STRONG_WARNING, message) - override fun error(message: String) = configuration.report(ERROR, message) - override fun log(message: String) = configuration.report(LOGGING, message) + private val collector = configuration.getNotNull(CLIConfigurationKeys.MESSAGE_COLLECTOR_KEY) + override fun warning(message: String)= collector.report(STRONG_WARNING, message) + override fun error(message: String) = collector.report(ERROR, message) + override fun log(message: String) = collector.report(LOGGING, message) override fun fatal(message: String): Nothing { - configuration.report(ERROR, message) + collector.report(ERROR, message) + (collector as? GroupingMessageCollector)?.flush() exitProcess(1) } }