diff --git a/idea/src/org/jetbrains/kotlin/idea/versions/KotlinUpdatePluginComponent.kt b/idea/src/org/jetbrains/kotlin/idea/versions/KotlinUpdatePluginComponent.kt index 80ff244587c..0fb698d37b9 100644 --- a/idea/src/org/jetbrains/kotlin/idea/versions/KotlinUpdatePluginComponent.kt +++ b/idea/src/org/jetbrains/kotlin/idea/versions/KotlinUpdatePluginComponent.kt @@ -77,11 +77,11 @@ class KotlinUpdatePluginComponent : ApplicationComponent { } private fun requestFullJarUpdate(jarFilePath: File) { - val localVirtualFile = LocalFileSystem.getInstance().refreshAndFindFileByIoFile(jarFilePath) + val localVirtualFile = LocalFileSystem.getInstance().refreshAndFindFileByIoFile(jarFilePath) ?: return // Build and update JarHandler - val jarFile = JarFileSystem.getInstance()!!.getJarRootForLocalFile(localVirtualFile!!) - VfsUtilCore.visitChildrenRecursively(jarFile!!, object : VirtualFileVisitor() {}) + val jarFile = JarFileSystem.getInstance().getJarRootForLocalFile(localVirtualFile) ?: return + VfsUtilCore.visitChildrenRecursively(jarFile, object : VirtualFileVisitor() {}) ((jarFile as NewVirtualFile)).markDirtyRecursively() // Synchronous refresh lead to deadlocks during components initialization KT-4584