FIR IDE: collect diagnostics under read lock
This commit is contained in:
+5
-2
@@ -59,8 +59,11 @@ internal class FileStructure(
|
|||||||
@OptIn(ExperimentalStdlibApi::class)
|
@OptIn(ExperimentalStdlibApi::class)
|
||||||
fun getAllDiagnosticsForFile(diagnosticCheckerFilter: DiagnosticCheckerFilter): Collection<FirPsiDiagnostic<*>> {
|
fun getAllDiagnosticsForFile(diagnosticCheckerFilter: DiagnosticCheckerFilter): Collection<FirPsiDiagnostic<*>> {
|
||||||
val structureElements = getAllStructureElements()
|
val structureElements = getAllStructureElements()
|
||||||
return buildSet {
|
|
||||||
collectDiagnosticsFromStructureElements(structureElements, diagnosticCheckerFilter)
|
return moduleFileCache.firFileLockProvider.withReadLock(firFile) {
|
||||||
|
buildSet {
|
||||||
|
collectDiagnosticsFromStructureElements(structureElements, diagnosticCheckerFilter)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user