don't commit too large or binary files (EA-96793 - assert: PsiDocumentManagerBase.documentChanged)

This commit is contained in:
peter
2017-02-16 18:18:56 +01:00
parent ee786f4696
commit f97fb0eed6
@@ -817,18 +817,8 @@ public abstract class PsiDocumentManagerBase extends PsiDocumentManager implemen
return;
}
final List<PsiFile> files = viewProvider.getAllFiles();
boolean commitNecessary = true;
for (PsiFile file : files) {
if (PsiToDocumentSynchronizer.isInsideAtomicChange(file)) {
commitNecessary = false;
continue;
}
assert file instanceof PsiFileImpl || "mock.file".equals(file.getName()) && ApplicationManager.getApplication().isUnitTestMode() :
event + "; file=" + file + "; allFiles=" + files + "; viewProvider=" + viewProvider;
}
List<PsiFile> files = viewProvider.getAllFiles();
boolean commitNecessary = files.stream().noneMatch(file -> PsiToDocumentSynchronizer.isInsideAtomicChange(file) || !(file instanceof PsiFileImpl));
boolean forceCommit = ApplicationManager.getApplication().hasWriteAction(ExternalChangeAction.class) &&
(SystemProperties.getBooleanProperty("idea.force.commit.on.external.change", false) ||