Kotlin Facet: Escape additional compiler arguments when converting them to string and unescape before parsing

#KT-16700 Fixed

Original commit: 811b8978c2
This commit is contained in:
Alexey Sedunov
2017-03-07 21:21:51 +03:00
parent e24fd4e986
commit 9759f1e067
2 changed files with 9 additions and 1 deletions
@@ -26,6 +26,7 @@ import org.jetbrains.kotlin.cli.common.arguments.mergeBeans
import org.jetbrains.kotlin.cli.common.messages.CompilerMessageLocation
import org.jetbrains.kotlin.cli.common.messages.CompilerMessageSeverity
import org.jetbrains.kotlin.config.CompilerSettings
import org.jetbrains.kotlin.config.additionalArgumentsAsList
import org.jetbrains.kotlin.daemon.common.*
import org.jetbrains.kotlin.jps.build.KotlinBuilder
import java.io.ByteArrayOutputStream
@@ -129,7 +130,7 @@ class JpsKotlinCompilerRunner : KotlinCompilerRunner<JpsCompilerEnvironment>() {
private fun withAdditionalCompilerArgs(compilerArgs: CommonCompilerArguments): Array<String> {
val allArgs = ArgumentUtils.convertArgumentsToStringList(compilerArgs) +
(compilerSettings?.additionalArguments?.split(" ") ?: emptyList())
(compilerSettings?.additionalArgumentsAsList ?: emptyList())
return allArgs.toTypedArray()
}