Fix nullability in the instrumenter, avoid exceptions on tests setup

This commit is contained in:
Ilya Chernikov
2019-07-09 16:09:24 +02:00
parent 4caddd2c1c
commit 2ef575d94e
@@ -46,12 +46,14 @@ class MockApplicationCreationTracingInstrumenter(private val debugInfo: Boolean)
loader.getResource("org/jetbrains/kotlin/testFramework/MockComponentManagerCreationTracer.class") != null loader.getResource("org/jetbrains/kotlin/testFramework/MockComponentManagerCreationTracer.class") != null
override fun transform( override fun transform(
loader: ClassLoader, loader: ClassLoader?,
className: String, className: String?,
classBeingRedefined: Class<*>?, classBeingRedefined: Class<*>?,
protectionDomain: ProtectionDomain, protectionDomain: ProtectionDomain?,
classfileBuffer: ByteArray classfileBuffer: ByteArray
): ByteArray? { ): ByteArray? {
if (className == null || loader == null) return null
if (loader::class.java.name == "org.jetbrains.kotlin.preloading.MemoryBasedClassLoader") return null if (loader::class.java.name == "org.jetbrains.kotlin.preloading.MemoryBasedClassLoader") return null
if (className == "com/intellij/mock/MockComponentManager" && isMockComponentManagerCreationTracerCanBeLoaded(loader)) { if (className == "com/intellij/mock/MockComponentManager" && isMockComponentManagerCreationTracerCanBeLoaded(loader)) {