diff options
author | Stephan Herrmann | 2018-04-26 20:11:48 +0000 |
---|---|---|
committer | Stephan Herrmann | 2018-05-03 13:57:49 +0000 |
commit | 5b2b497b65432ce98669eebb58329765ed9bc5f3 (patch) | |
tree | 399306e77218adc44829a3a87442e7e41a1b044b | |
parent | ed12232140eda4a94e37c819f1df162177a2a1fa (diff) | |
download | eclipse.jdt.core-5b2b497b65432ce98669eebb58329765ed9bc5f3.tar.gz eclipse.jdt.core-5b2b497b65432ce98669eebb58329765ed9bc5f3.tar.xz eclipse.jdt.core-5b2b497b65432ce98669eebb58329765ed9bc5f3.zip |
Bug 534091 - [9][test]
ReconcilerTests.testConvertPrimitiveTypeArrayTypeArgument fails as part
of the suite
Change-Id: I2e86b4de36ee6ef35745fdadeab05e096fb8c913
-rw-r--r-- | org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/model/ReconcilerTests.java | 2 | ||||
-rw-r--r-- | org.eclipse.jdt.core/model/org/eclipse/jdt/internal/core/JavaProjectElementInfo.java | 10 |
2 files changed, 11 insertions, 1 deletions
diff --git a/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/model/ReconcilerTests.java b/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/model/ReconcilerTests.java index 74b71ee1c2..418bb24276 100644 --- a/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/model/ReconcilerTests.java +++ b/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/model/ReconcilerTests.java @@ -1581,7 +1581,7 @@ public void testConstantReference() throws CoreException { * Ensures that the source type converter doesn't throw an OutOfMemoryError if converting a generic type with a primitive type array as argument * (regression test for bug 135296 opening a special java file results in an "out of memory" message) */ -public void _testConvertPrimitiveTypeArrayTypeArgument() throws CoreException { +public void testConvertPrimitiveTypeArrayTypeArgument() throws CoreException { ICompilationUnit otherCopy = null; try { otherCopy = getWorkingCopy( diff --git a/org.eclipse.jdt.core/model/org/eclipse/jdt/internal/core/JavaProjectElementInfo.java b/org.eclipse.jdt.core/model/org/eclipse/jdt/internal/core/JavaProjectElementInfo.java index a605e0242c..9e6a0c86fa 100644 --- a/org.eclipse.jdt.core/model/org/eclipse/jdt/internal/core/JavaProjectElementInfo.java +++ b/org.eclipse.jdt.core/model/org/eclipse/jdt/internal/core/JavaProjectElementInfo.java @@ -20,6 +20,7 @@ import org.eclipse.core.runtime.IPath; import org.eclipse.jdt.core.IClasspathEntry; import org.eclipse.jdt.core.ICompilationUnit; import org.eclipse.jdt.core.IJavaElement; +import org.eclipse.jdt.core.IJavaProject; import org.eclipse.jdt.core.IPackageFragmentRoot; import org.eclipse.jdt.core.JavaCore; import org.eclipse.jdt.core.JavaModelException; @@ -202,6 +203,15 @@ class JavaProjectElementInfo extends OpenableElementInfo { ProjectCache getProjectCache(JavaProject project, boolean excludeTestCode) { ProjectCache cache = excludeTestCode ? this.mainProjectCache : this.projectCache; + if (cache != null) { + for (IPackageFragmentRoot root : cache.allPkgFragmentRootsCache) { + IJavaProject rootProject = root.getJavaProject(); + if (rootProject != this && !rootProject.exists()) { + cache = null; // force rebuilding + break; + } + } + } if (cache == null) { IPackageFragmentRoot[] roots; Map<?, ?> reverseMap = new HashMap<>(3); |