diff --git a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/highlighter/OutsidersPsiFileSupportUtils.kt b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/highlighter/OutsidersPsiFileSupportUtils.kt index 73e12c5b8a5..0988f8c0b8d 100644 --- a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/highlighter/OutsidersPsiFileSupportUtils.kt +++ b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/highlighter/OutsidersPsiFileSupportUtils.kt @@ -8,7 +8,7 @@ package org.jetbrains.kotlin.idea.highlighter import com.intellij.openapi.project.Project import com.intellij.openapi.vfs.VfsUtil import com.intellij.openapi.vfs.VirtualFile -import java.io.File +import java.nio.file.Paths object OutsidersPsiFileSupportUtils { fun getOutsiderFileOrigin(project: Project, virtualFile: VirtualFile): VirtualFile? { @@ -16,9 +16,8 @@ object OutsidersPsiFileSupportUtils { val originalFilePath = OutsidersPsiFileSupportWrapper.getOriginalFilePath(virtualFile) ?: return null - return generateSequence(File(originalFilePath)) { if (it.canonicalPath == project.baseDir.canonicalPath) null else it.parentFile } - .filter { it.exists() } - .firstOrNull() - ?.let { VfsUtil.findFileByIoFile(it, false) } + return generateSequence(VfsUtil.findFile(Paths.get(originalFilePath), true)) { + if (it == project.baseDir) null else it.parent + }.filter { it.exists() }.firstOrNull() } } \ No newline at end of file