Do not use canonical paths in OutsidersPsiFileSupportUtils (EA-135551)
EA-135551 - IOE: OutsidersPsiFileSupportUtils$getOutsiderFileOrigin$.invoke
This commit is contained in:
+4
-5
@@ -8,7 +8,7 @@ package org.jetbrains.kotlin.idea.highlighter
|
|||||||
import com.intellij.openapi.project.Project
|
import com.intellij.openapi.project.Project
|
||||||
import com.intellij.openapi.vfs.VfsUtil
|
import com.intellij.openapi.vfs.VfsUtil
|
||||||
import com.intellij.openapi.vfs.VirtualFile
|
import com.intellij.openapi.vfs.VirtualFile
|
||||||
import java.io.File
|
import java.nio.file.Paths
|
||||||
|
|
||||||
object OutsidersPsiFileSupportUtils {
|
object OutsidersPsiFileSupportUtils {
|
||||||
fun getOutsiderFileOrigin(project: Project, virtualFile: VirtualFile): VirtualFile? {
|
fun getOutsiderFileOrigin(project: Project, virtualFile: VirtualFile): VirtualFile? {
|
||||||
@@ -16,9 +16,8 @@ object OutsidersPsiFileSupportUtils {
|
|||||||
|
|
||||||
val originalFilePath = OutsidersPsiFileSupportWrapper.getOriginalFilePath(virtualFile) ?: return null
|
val originalFilePath = OutsidersPsiFileSupportWrapper.getOriginalFilePath(virtualFile) ?: return null
|
||||||
|
|
||||||
return generateSequence(File(originalFilePath)) { if (it.canonicalPath == project.baseDir.canonicalPath) null else it.parentFile }
|
return generateSequence(VfsUtil.findFile(Paths.get(originalFilePath), true)) {
|
||||||
.filter { it.exists() }
|
if (it == project.baseDir) null else it.parent
|
||||||
.firstOrNull()
|
}.filter { it.exists() }.firstOrNull()
|
||||||
?.let { VfsUtil.findFileByIoFile(it, false) }
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user