CLI: support -option=value syntax for non-advanced flags #KT-47640 Fixed

This commit is contained in:
Mikhail Glukhikh
2021-07-07 15:54:08 +03:00
committed by teamcityserver
parent d8417fd622
commit 5871f3d663
8 changed files with 16 additions and 23 deletions
@@ -107,7 +107,7 @@ private fun <A : CommonToolArguments> parsePreprocessedCommandLineArguments(args
return arg.startsWith(argument.value + "=")
}
return argument.value == arg
return argument.value == arg || arg.startsWith(argument.value + "=")
}
val freeArgs = ArrayList<String>()
@@ -160,10 +160,10 @@ private fun <A : CommonToolArguments> parsePreprocessedCommandLineArguments(args
val (property, argument) = argumentField
val value: Any = when {
argumentField.property.returnType.classifier == Boolean::class -> true
argument.isAdvanced && arg.startsWith(argument.value + "=") -> {
arg.startsWith(argument.value + "=") -> {
arg.substring(argument.value.length + 1)
}
argument.isAdvanced && arg.startsWith(argument.deprecatedName + "=") -> {
arg.startsWith(argument.deprecatedName + "=") -> {
arg.substring(argument.deprecatedName.length + 1)
}
i == args.size -> {