From 8133d0be888d855ef1c7a759359cb685c21168d9 Mon Sep 17 00:00:00 2001 From: Christian Dietrich Date: Fri, 2 Jul 2021 11:50:31 +0200 Subject: [PATCH] added a clear test Signed-off-by: Christian Dietrich --- .../src/org/eclipse/xtext/resource/XtextResource.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/org.eclipse.xtext/src/org/eclipse/xtext/resource/XtextResource.java b/org.eclipse.xtext/src/org/eclipse/xtext/resource/XtextResource.java index 449cb394b..832954ec8 100644 --- a/org.eclipse.xtext/src/org/eclipse/xtext/resource/XtextResource.java +++ b/org.eclipse.xtext/src/org/eclipse/xtext/resource/XtextResource.java @@ -43,6 +43,7 @@ import org.eclipse.xtext.serializer.ISerializer; import org.eclipse.xtext.service.OperationCanceledManager; import org.eclipse.xtext.util.IResourceScopeCache; import org.eclipse.xtext.util.LazyStringInputStream; +import org.eclipse.xtext.util.OnChangeEvictingCache; import org.eclipse.xtext.util.ReplaceRegion; import org.eclipse.xtext.util.TextRegion; import org.eclipse.xtext.validation.IConcreteSyntaxValidator; @@ -296,6 +297,10 @@ public class XtextResource extends ResourceImpl { EObject newRootASTElement = parseResult.getRootASTElement(); if (newRootASTElement != null && !containsRootElement(newRootASTElement)) getContents().add(0, newRootASTElement); + IResourceScopeCache cache = getCache(); + if (cache instanceof OnChangeEvictingCache) { + ((OnChangeEvictingCache) cache).clear(this); + } reattachModificationTracker(newRootASTElement); clearErrorsAndWarnings(); addSyntaxErrors();