fix(plugins): do not parse kotlin metadata if all options disabled
This commit is contained in:
+8
@@ -43,6 +43,14 @@ class KotlinMetadataOptions : BaseOptionsParser() {
|
||||
)
|
||||
}
|
||||
|
||||
fun isPreparePassNeeded(): Boolean {
|
||||
return isClassAlias
|
||||
}
|
||||
|
||||
fun isDecompilePassNeeded(): Boolean {
|
||||
return isMethodArgs || isFields || isCompanion || isDataClass || isToString || isGetters
|
||||
}
|
||||
|
||||
companion object {
|
||||
const val CLASS_ALIAS_OPT = "$PLUGIN_ID.class-alias"
|
||||
const val METHOD_ARGS_OPT = "$PLUGIN_ID.method-args"
|
||||
|
||||
+6
-2
@@ -16,8 +16,12 @@ class KotlinMetadataPlugin : JadxPlugin {
|
||||
|
||||
override fun init(context: JadxPluginContext) {
|
||||
context.registerOptions(options)
|
||||
context.addPass(KotlinMetadataPreparePass(options))
|
||||
context.addPass(KotlinMetadataDecompilePass(options))
|
||||
if (options.isPreparePassNeeded()) {
|
||||
context.addPass(KotlinMetadataPreparePass(options))
|
||||
}
|
||||
if (options.isDecompilePassNeeded()) {
|
||||
context.addPass(KotlinMetadataDecompilePass(options))
|
||||
}
|
||||
}
|
||||
|
||||
companion object {
|
||||
|
||||
+1
-1
@@ -50,7 +50,7 @@ class KotlinMetadataDecompilePass(
|
||||
val args = wrapper.getMethodArgs()
|
||||
args.forEach { (_, list) ->
|
||||
list.forEach { (rArg, alias) ->
|
||||
// TODO comment not being added ?
|
||||
// TODO: comment not being added?
|
||||
RenameReasonAttr.forNode(rArg).append(METADATA_REASON)
|
||||
rArg.name = alias
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user