[321175] ClassCastException: PassthruResourcesEList incompatible with SynchronizedResourcesEList
diff --git a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/internal/util/emf/workbench/ProjectResourceSetImpl.java b/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/internal/util/emf/workbench/ProjectResourceSetImpl.java
index 7c612ed..5250b54 100644
--- a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/internal/util/emf/workbench/ProjectResourceSetImpl.java
+++ b/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/internal/util/emf/workbench/ProjectResourceSetImpl.java
@@ -10,7 +10,7 @@
  *******************************************************************************/
 /*
  *  $$RCSfile: ProjectResourceSetImpl.java,v $$
- *  $$Revision: 1.31 $$  $$Date: 2010/07/14 14:39:20 $$ 
+ *  $$Revision: 1.32 $$  $$Date: 2010/07/29 18:20:34 $$ 
  */
 package org.eclipse.jem.internal.util.emf.workbench;
 
@@ -946,7 +946,15 @@
 	 */
 	public List<Resource> getImmutableResources() {
 		 List <Resource> list = new ArrayList<Resource>();
-		 ((SynchronizedResourcesEList)getResources()).copyInto(list);
+		 EList resources = getResources();
+		 if (resources instanceof SynchronizedResourcesEList)
+		 {
+			 ((SynchronizedResourcesEList)resources).copyInto(list);
+		 }
+		 else
+		 {
+			 list = Collections.synchronizedList(resources);
+		 }
 		 return list;
 	}
 	@Override
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/PassthruResourceSet.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/PassthruResourceSet.java
index 1c04b70..a4e957d 100644
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/PassthruResourceSet.java
+++ b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/PassthruResourceSet.java
@@ -20,7 +20,6 @@
 import org.eclipse.emf.ecore.EObject;
 import org.eclipse.emf.ecore.resource.Resource;
 import org.eclipse.emf.ecore.resource.ResourceSet;
-import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
 import org.eclipse.jem.internal.util.emf.workbench.ProjectResourceSetImpl;
 import org.eclipse.jem.util.emf.workbench.WorkbenchResourceHelperBase;
 
@@ -41,7 +40,7 @@
 public class PassthruResourceSet extends ProjectResourceSetImpl {
 	protected boolean isIsolated = false;
 
-	public class PassthruResourcesEList extends ResourceSetImpl.ResourcesEList {
+	public class PassthruResourcesEList extends SynchronizedResourcesEList {
 		/**
 		 * 
 		 */