diff options
| author | Laurent Redor | 2014-05-23 09:31:57 +0000 |
|---|---|---|
| committer | Laurent Redor | 2014-05-23 09:31:57 +0000 |
| commit | 57ab2f59b2d20aeaecbfcee36382d392af4effaa (patch) | |
| tree | 0842465e83a0c2e29175071caa234df2a0134504 | |
| parent | d7ede8540c0bccd7cfd5e3980f2cf44e2d05890d (diff) | |
| download | org.eclipse.sirius-57ab2f59b2d20aeaecbfcee36382d392af4effaa.tar.gz org.eclipse.sirius-57ab2f59b2d20aeaecbfcee36382d392af4effaa.tar.xz org.eclipse.sirius-57ab2f59b2d20aeaecbfcee36382d392af4effaa.zip | |
[435614] Copy the list of sessions before iterate on it.
This avoids potential ConcurrentModificationException.
Bug: 435614
Change-Id: Ic59596479133221e5cfecfe6db1faf215968d898
Signed-off-by: Laurent Redor <laurent.redor@obeo.fr>
| -rw-r--r-- | plugins/org.eclipse.sirius/src/org/eclipse/sirius/business/api/query/IFileQuery.java | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/plugins/org.eclipse.sirius/src/org/eclipse/sirius/business/api/query/IFileQuery.java b/plugins/org.eclipse.sirius/src/org/eclipse/sirius/business/api/query/IFileQuery.java index e97cfd1381..268a179bbb 100644 --- a/plugins/org.eclipse.sirius/src/org/eclipse/sirius/business/api/query/IFileQuery.java +++ b/plugins/org.eclipse.sirius/src/org/eclipse/sirius/business/api/query/IFileQuery.java @@ -20,6 +20,7 @@ import org.eclipse.sirius.business.api.session.SessionManager; import org.eclipse.sirius.viewpoint.DAnalysisSessionEObject; import com.google.common.collect.Iterables; +import com.google.common.collect.Lists; /** * A class aggregating all the queries (read-only!) having a {@link IFile} as a @@ -58,7 +59,7 @@ public class IFileQuery { public boolean isResourceHandledByOpenedSession() { boolean result = false; URI fileURI = URI.createPlatformResourceURI(file.getFullPath().toString(), true); - for (Session session : SessionManager.INSTANCE.getSessions()) { + for (Session session : Lists.newArrayList(SessionManager.INSTANCE.getSessions())) { if (session.isOpen() && fileURI != null) { Iterable<Resource> handledResources = Iterables.concat(session.getSemanticResources(), session.getReferencedSessionResources()); |
