246795 Regression from 246275 (Deadlock with taglib index and IJavaProject.getResolvedClasspath(boolean))
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/taglib/ProjectDescription.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/taglib/ProjectDescription.java
index 269d7f4..ae17759 100644
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/taglib/ProjectDescription.java
+++ b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/taglib/ProjectDescription.java
@@ -938,7 +938,6 @@
private void ensureUpTodate() {
IClasspathEntry[] entries = null;
- if (!fBuildPathIsDirty) {
try {
/*
* If the Java nature isn't present (or something else is
@@ -952,7 +951,6 @@
catch (JavaModelException e) {
Logger.logException(e);
}
- }
if (entries != null) {
try {
LOCK.acquire();
@@ -961,7 +959,7 @@
* changed. This should cover most cases such as when a
* library is added into or removed from a container.
*/
- fBuildPathIsDirty = (fBuildPathEntryCount != entries.length);
+ fBuildPathIsDirty = fBuildPathIsDirty || (fBuildPathEntryCount != entries.length);
if (fBuildPathIsDirty) {
indexClasspath(entries);