mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
Revert: run all-docs-committed handlers when PSI is absent (assert-EDT exceptions)
This commit is contained in:
@@ -428,7 +428,6 @@ public abstract class PsiDocumentManagerBase extends PsiDocumentManager implemen
|
||||
final PsiFile psiFile = getPsiFile(document);
|
||||
if (psiFile == null) {
|
||||
myUncommittedDocuments.remove(document);
|
||||
runAfterCommitActions(document);
|
||||
return; // the project must be closing or file deleted
|
||||
}
|
||||
|
||||
@@ -863,13 +862,11 @@ public abstract class PsiDocumentManagerBase extends PsiDocumentManager implemen
|
||||
|
||||
VirtualFile virtualFile = FileDocumentManager.getInstance().getFile(document);
|
||||
if (virtualFile == null || !FileIndexFacade.getInstance(myProject).isInContent(virtualFile)) {
|
||||
runAfterCommitActions(document);
|
||||
return;
|
||||
}
|
||||
|
||||
final PsiFile psiFile = getPsiFile(document);
|
||||
if (psiFile == null) {
|
||||
runAfterCommitActions(document);
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
@@ -22,7 +22,6 @@ import com.intellij.mock.MockPsiFile;
|
||||
import com.intellij.openapi.application.ApplicationManager;
|
||||
import com.intellij.openapi.application.ModalityState;
|
||||
import com.intellij.openapi.application.TransactionGuard;
|
||||
import com.intellij.openapi.application.WriteAction;
|
||||
import com.intellij.openapi.application.impl.LaterInvocator;
|
||||
import com.intellij.openapi.command.WriteCommandAction;
|
||||
import com.intellij.openapi.editor.Document;
|
||||
@@ -82,7 +81,6 @@ import java.util.Collections;
|
||||
import java.util.Random;
|
||||
import java.util.concurrent.ExecutionException;
|
||||
import java.util.concurrent.TimeoutException;
|
||||
import java.util.concurrent.atomic.AtomicBoolean;
|
||||
import java.util.concurrent.atomic.AtomicInteger;
|
||||
|
||||
public class PsiDocumentManagerImplTest extends PlatformTestCase {
|
||||
@@ -757,21 +755,6 @@ public class PsiDocumentManagerImplTest extends PlatformTestCase {
|
||||
assertTrue(PsiDocumentManager.getInstance(myProject).isCommitted(document));
|
||||
}
|
||||
|
||||
public void testPerformWhenAllCommittedWorksAfterFileDeletion() throws Exception {
|
||||
PsiFile file = getPsiManager().findFile(getVirtualFile(createTempFile("X.txt", "")));
|
||||
Document document = file.getViewProvider().getDocument();
|
||||
assertNotNull(document);
|
||||
|
||||
AtomicBoolean invoked = new AtomicBoolean();
|
||||
WriteAction.run(() -> {
|
||||
document.setText("class A{}");
|
||||
PsiDocumentManager.getInstance(myProject).performWhenAllCommitted(() -> invoked.set(true));
|
||||
file.getVirtualFile().delete(this);
|
||||
});
|
||||
PsiDocumentManager.getInstance(myProject).commitAllDocuments();
|
||||
assertTrue(invoked.get());
|
||||
}
|
||||
|
||||
@SuppressWarnings("ConstantConditions")
|
||||
public void testPerformLaterWhenAllCommittedFromCommitHandler() throws Exception {
|
||||
Document document = createDocument();
|
||||
|
||||
Reference in New Issue
Block a user