From 5c9b57ea2fd16a48ee864d04e260add275703df1 Mon Sep 17 00:00:00 2001 From: Anna Kozlova Date: Mon, 23 Mar 2015 19:55:40 +0100 Subject: [PATCH] assert that refactoring is not started under write action; check validity (EA-66799 - PIEAE: StubBasedPsiElementBase.getContainingFile) --- .../src/com/intellij/refactoring/BaseRefactoringProcessor.java | 1 + .../src/com/intellij/refactoring/rename/RenameProcessor.java | 1 + 2 files changed, 2 insertions(+) diff --git a/platform/lang-impl/src/com/intellij/refactoring/BaseRefactoringProcessor.java b/platform/lang-impl/src/com/intellij/refactoring/BaseRefactoringProcessor.java index 41d37ca44770..bbd4fb83498d 100644 --- a/platform/lang-impl/src/com/intellij/refactoring/BaseRefactoringProcessor.java +++ b/platform/lang-impl/src/com/intellij/refactoring/BaseRefactoringProcessor.java @@ -543,6 +543,7 @@ public abstract class BaseRefactoringProcessor implements Runnable { return; } if (ApplicationManager.getApplication().isWriteAccessAllowed()) { + LOG.info(new Exception()); DumbService.getInstance(myProject).smartInvokeLater(new Runnable() { @Override public void run() { diff --git a/platform/lang-impl/src/com/intellij/refactoring/rename/RenameProcessor.java b/platform/lang-impl/src/com/intellij/refactoring/rename/RenameProcessor.java index a933035c824f..722a942c4c7e 100644 --- a/platform/lang-impl/src/com/intellij/refactoring/rename/RenameProcessor.java +++ b/platform/lang-impl/src/com/intellij/refactoring/rename/RenameProcessor.java @@ -122,6 +122,7 @@ public class RenameProcessor extends BaseRefactoringProcessor { @Override public void doRun() { + if (!myPrimaryElement.isValid()) return; prepareRenaming(myPrimaryElement, myNewName, myAllRenames); super.doRun();