Bug 509984 - UI freeze with many closed projects if working sets enabled

Avoid asking Java projects about classpaths if they are not accessible -
this produces unneeded overhead.

Change-Id: Ic5b05a879b1513ef05f559fa9830e233a46fc2b9
Signed-off-by: Andrey Loskutov <loskutov@gmx.de>
diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/workingsets/WorkingSetFilter.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/workingsets/WorkingSetFilter.java
index 1a0f325..c36f85e 100644
--- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/workingsets/WorkingSetFilter.java
+++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/workingsets/WorkingSetFilter.java
@@ -98,6 +98,9 @@
 			if (fJavaElement != null && element.fJavaElement != null) {
 				IJavaElement other= element.fJavaElement;
 				if (fJavaElement.getElementType() == IJavaElement.JAVA_PROJECT) {
+					if (!((IJavaProject) fJavaElement).getProject().isAccessible()) {
+						return false;
+					}
 					IPackageFragmentRoot pkgRoot= (IPackageFragmentRoot) other.getAncestor(IJavaElement.PACKAGE_FRAGMENT_ROOT);
 					if (pkgRoot != null && pkgRoot.isExternal()) {
 						if (((IJavaProject) fJavaElement).isOnClasspath(other)) {