cheptsov / AdvancedExpressionFolding

https://plugins.jetbrains.com/plugin/9320?pr=idea
140 stars 30 forks source link

NullPointerException when calling isReferenceTo #130

Open alshain opened 5 years ago

alshain commented 5 years ago

On the latest IntelliJ EAP, I get this sometimes when opening an editor, which causes the editor loading to abort, just showing an infinite loading spinner.

2019-01-01 14:09:52,947 [11213281]  ERROR - plication.impl.ApplicationImpl - java.util.concurrent.ExecutionException: java.lang.IllegalArgumentException: Argument for @NotNull parameter 'element' of com/intellij/psi/impl/source/tree/java/PsiReferenceExpressionImpl.isReferenceTo must not be null 
java.lang.RuntimeException: java.util.concurrent.ExecutionException: java.lang.IllegalArgumentException: Argument for @NotNull parameter 'element' of com/intellij/psi/impl/source/tree/java/PsiReferenceExpressionImpl.isReferenceTo must not be null
    at com.intellij.openapi.fileEditor.impl.text.AsyncEditorLoader.resultInTimeOrNull(AsyncEditorLoader.java:194)
    at com.intellij.openapi.fileEditor.impl.text.AsyncEditorLoader.lambda$runTooLongWatchdog$0(AsyncEditorLoader.java:86)
    at com.intellij.openapi.application.impl.ApplicationImpl$1.run(ApplicationImpl.java:314)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)
Caused by: java.util.concurrent.ExecutionException: java.lang.IllegalArgumentException: Argument for @NotNull parameter 'element' of com/intellij/psi/impl/source/tree/java/PsiReferenceExpressionImpl.isReferenceTo must not be null
    at java.util.concurrent.FutureTask.report(FutureTask.java:122)
    at java.util.concurrent.FutureTask.get(FutureTask.java:206)
    at com.intellij.openapi.fileEditor.impl.text.AsyncEditorLoader.resultInTimeOrNull(AsyncEditorLoader.java:190)
    ... 7 more
Caused by: java.lang.IllegalArgumentException: Argument for @NotNull parameter 'element' of com/intellij/psi/impl/source/tree/java/PsiReferenceExpressionImpl.isReferenceTo must not be null
    at com.intellij.psi.impl.source.tree.java.PsiReferenceExpressionImpl.$$$reportNull$$$0(PsiReferenceExpressionImpl.java)
    at com.intellij.psi.impl.source.tree.java.PsiReferenceExpressionImpl.isReferenceTo(PsiReferenceExpressionImpl.java)
    at com.intellij.advancedExpressionFolding.AdvancedExpressionFoldingBuilder.lambda$getConditionalExpression$5(AdvancedExpressionFoldingBuilder.java:737)
    at com.intellij.util.containers.FilteredTraverserBase$Cond.valueAnd(FilteredTraverserBase.java:441)
    at com.intellij.util.containers.FilteredTraverserBase$Cond$2.value(FilteredTraverserBase.java:463)
    at com.intellij.util.containers.JBIterator$FilterOp.apply(JBIterator.java:315)
    at com.intellij.util.containers.JBIterator.peekNext(JBIterator.java:150)
    at com.intellij.util.containers.JBIterator.hasNext(JBIterator.java:110)
    at com.intellij.util.containers.ContainerUtilRt.copy(ContainerUtilRt.java:161)
    at com.intellij.util.containers.ContainerUtilRt.newArrayList(ContainerUtilRt.java:150)
    at com.intellij.util.containers.JBIterable.toList(JBIterable.java:865)
    at com.intellij.util.containers.FilteredTraverserBase.toList(FilteredTraverserBase.java:273)
    at com.intellij.advancedExpressionFolding.AdvancedExpressionFoldingBuilder.getConditionalExpression(AdvancedExpressionFoldingBuilder.java:738)
    at com.intellij.advancedExpressionFolding.AdvancedExpressionFoldingBuilder.buildExpression(AdvancedExpressionFoldingBuilder.java:468)
    at com.intellij.advancedExpressionFolding.AdvancedExpressionFoldingBuilder.lambda$getExpression$4(AdvancedExpressionFoldingBuilder.java:346)
    at com.intellij.psi.util.CachedValuesManager.lambda$getCachedValue$0(CachedValuesManager.java:140)
    at com.intellij.psi.impl.PsiCachedValueImpl.doCompute(PsiCachedValueImpl.java:49)
    at com.intellij.util.CachedValueBase.getValueWithLock(CachedValueBase.java:222)
    at com.intellij.psi.impl.PsiCachedValue.getValueWithLock(PsiCachedValue.java:60)
    at com.intellij.psi.impl.PsiCachedValueImpl.getValue(PsiCachedValueImpl.java:38)
    at com.intellij.util.CachedValuesManagerImpl.getCachedValue(CachedValuesManagerImpl.java:88)
    at com.intellij.psi.util.CachedValuesManager.getCachedValue(CachedValuesManager.java:139)
    at com.intellij.psi.util.CachedValuesManager.getCachedValue(CachedValuesManager.java:126)
    at com.intellij.advancedExpressionFolding.AdvancedExpressionFoldingBuilder.getExpression(AdvancedExpressionFoldingBuilder.java:345)
    at com.intellij.advancedExpressionFolding.AdvancedExpressionFoldingBuilder.getNonSyntheticExpression(AdvancedExpressionFoldingBuilder.java:365)
    at com.intellij.advancedExpressionFolding.AdvancedExpressionFoldingBuilder.buildFoldRegions(AdvancedExpressionFoldingBuilder.java:1900)
    at com.intellij.advancedExpressionFolding.AdvancedExpressionFoldingBuilder.buildFoldRegions(AdvancedExpressionFoldingBuilder.java:1908)
    at com.intellij.advancedExpressionFolding.AdvancedExpressionFoldingBuilder.buildFoldRegions(AdvancedExpressionFoldingBuilder.java:1908)
    at com.intellij.advancedExpressionFolding.AdvancedExpressionFoldingBuilder.buildFoldRegions(AdvancedExpressionFoldingBuilder.java:1908)
    at com.intellij.advancedExpressionFolding.AdvancedExpressionFoldingBuilder.buildFoldRegions(AdvancedExpressionFoldingBuilder.java:1908)
    at com.intellij.advancedExpressionFolding.AdvancedExpressionFoldingBuilder.buildFoldRegions(AdvancedExpressionFoldingBuilder.java:1908)
    at com.intellij.advancedExpressionFolding.AdvancedExpressionFoldingBuilder.buildFoldRegions(AdvancedExpressionFoldingBuilder.java:1908)
    at com.intellij.lang.folding.LanguageFolding.buildFoldingDescriptors(LanguageFolding.java:71)
    at com.intellij.lang.folding.CompositeFoldingBuilder.buildFoldRegions(CompositeFoldingBuilder.java:43)
    at com.intellij.lang.folding.LanguageFolding.buildFoldingDescriptors(LanguageFolding.java:71)
    at com.intellij.codeInsight.folding.impl.FoldingUpdate.getFoldingsFor(FoldingUpdate.java:246)
    at com.intellij.codeInsight.folding.impl.FoldingUpdate.getFoldingsFor(FoldingUpdate.java:226)
    at com.intellij.codeInsight.folding.impl.CodeFoldingManagerImpl.buildInitialFoldings(CodeFoldingManagerImpl.java:192)
    at com.intellij.openapi.fileEditor.impl.text.PsiAwareTextEditorImpl.loadEditorInBackground(PsiAwareTextEditorImpl.java:57)
    at com.intellij.openapi.fileEditor.impl.text.AsyncEditorLoader.lambda$tryLoadEditor$3(AsyncEditorLoader.java:162)
    at com.intellij.psi.impl.PsiDocumentManagerBase.lambda$commitAndRunReadAction$4(PsiDocumentManagerBase.java:491)
    at com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:977)
    at com.intellij.openapi.application.ReadAction.compute(ReadAction.java:57)
    at com.intellij.psi.impl.PsiDocumentManagerBase.commitAndRunReadAction(PsiDocumentManagerBase.java:489)
    at com.intellij.openapi.fileEditor.impl.text.AsyncEditorLoader.lambda$tryLoadEditor$4(AsyncEditorLoader.java:167)
    at com.intellij.openapi.progress.util.ProgressIndicatorUtils.lambda$runWithWriteActionPriority$1(ProgressIndicatorUtils.java:123)
    at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcess$2(CoreProgressManager.java:164)
    at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:582)
    at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:532)
    at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:87)
    at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:151)
    at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runWithWriteActionPriority(ProgressIndicatorUtils.java:112)
    at com.intellij.openapi.fileEditor.impl.text.AsyncEditorLoader.tryLoadEditor(AsyncEditorLoader.java:166)
    at com.intellij.openapi.fileEditor.impl.text.AsyncEditorLoader.lambda$scheduleLoading$2(AsyncEditorLoader.java:120)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    at com.intellij.util.concurrency.BoundedTaskExecutor.doRun(BoundedTaskExecutor.java:227)
    at com.intellij.util.concurrency.BoundedTaskExecutor.access$100(BoundedTaskExecutor.java:26)
    at com.intellij.util.concurrency.BoundedTaskExecutor$2$1.run(BoundedTaskExecutor.java:200)
    at com.intellij.util.ConcurrencyUtil.runUnderThreadName(ConcurrencyUtil.java:229)
    at com.intellij.util.concurrency.BoundedTaskExecutor$2.run(BoundedTaskExecutor.java:194)
    ... 3 more
2019-01-01 14:09:52,948 [11213282]  ERROR - plication.impl.ApplicationImpl - IntelliJ IDEA 2018.3.3  Build #IU-183.5153.8 
2019-01-01 14:09:52,948 [11213282]  ERROR - plication.impl.ApplicationImpl - JDK: 1.8.0_152-release; VM: OpenJDK 64-Bit Server VM; Vendor: JetBrains s.r.o 
2019-01-01 14:09:52,948 [11213282]  ERROR - plication.impl.ApplicationImpl - OS: Windows 10 
2019-01-01 14:09:52,949 [11213283]  ERROR - plication.impl.ApplicationImpl - Last Action: ShowUsages 
2019-01-01 14:09:52,949 [11213283]  ERROR - plication.impl.ApplicationImpl - Current Command: