KAPT+IR: Don't clear binding context if KAPT is used

This commit is contained in:
Mikhael Bogdanov
2022-02-16 11:40:42 +01:00
parent f05c72d48f
commit 7b767aaa1c
2 changed files with 4 additions and 11 deletions
@@ -203,7 +203,10 @@ open class JvmIrCodegenFactory(
// We need to compile all files we reference in Klibs
irModuleFragment.files.addAll(dependencies.flatMap { it.files })
if (!input.configuration.getBoolean(JVMConfigurationKeys.DO_NOT_CLEAR_BINDING_CONTEXT)) {
if (!input.configuration.getBoolean(JVMConfigurationKeys.DO_NOT_CLEAR_BINDING_CONTEXT) && !input.configuration.getBoolean(
JVMConfigurationKeys.USE_KAPT_WITH_JVM_IR
)
) {
val originalBindingContext = input.bindingContext as? CleanableBindingContext
?: error("BindingContext should be cleanable in JVM IR to avoid leaking memory: ${input.bindingContext}")
originalBindingContext.clear()