User: rednesto Date: 16 Jan 24 16:52 Revision: 54110518e8800154e80dfed876732dd925a08bd8 Summary: Attemps to fix read access in translation references search TeamCity URL: https://ci.mcdev.io/viewModification.html?tab=vcsModificationFiles&modId=8988&personal=false Index: src/main/kotlin/translations/reference/TranslationReferenceSearch.kt =================================================================== --- src/main/kotlin/translations/reference/TranslationReferenceSearch.kt (revision e91dacf75828f1bf516e79175bd2f75d0733f612) +++ src/main/kotlin/translations/reference/TranslationReferenceSearch.kt (revision 54110518e8800154e80dfed876732dd925a08bd8) @@ -24,9 +24,9 @@ import com.intellij.find.FindModel import com.intellij.find.impl.FindInProjectUtil import com.intellij.openapi.application.runReadAction +import com.intellij.psi.PsiElement import com.intellij.psi.PsiReference import com.intellij.psi.search.searches.ReferencesSearch -import com.intellij.psi.util.createSmartPointer import com.intellij.usages.FindUsagesProcessPresentation import com.intellij.usages.UsageViewPresentation import com.intellij.util.Processor @@ -41,10 +41,11 @@ return true } - val entryPointer = parameters.elementToSearch.createSmartPointer() + val key = runReadAction { + val searchElement = parameters.elementToSearch.takeIf(PsiElement::isValid) + searchElement?.let(TranslationFiles::toTranslation)?.key + } ?: return true - val key = runReadAction { entryPointer.element?.let(TranslationFiles::toTranslation)?.key } ?: return true - fun power(start: List): Set> { tailrec fun pwr(s: List, acc: Set>): Set> = if (s.isEmpty()) {