From db891f98dd0b4c0c42f70d3559d09629a331b228 Mon Sep 17 00:00:00 2001 From: Jeff Johnston Date: Mon, 6 May 2019 20:12:34 -0400 Subject: Bug 547026 - fix ConcurrentModificationException - in ContainerGCCToolChainProvider change collection of toolchains to be an array before accessing to prevent ConcurrentModificationException Change-Id: Ia39ddee181ba814997a34d5b1d68170fe1cda5ce --- .../docker/launcher/ui/launchbar/ContainerGCCToolChainProvider.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'launch/org.eclipse.cdt.docker.launcher') diff --git a/launch/org.eclipse.cdt.docker.launcher/src/org/eclipse/cdt/internal/docker/launcher/ui/launchbar/ContainerGCCToolChainProvider.java b/launch/org.eclipse.cdt.docker.launcher/src/org/eclipse/cdt/internal/docker/launcher/ui/launchbar/ContainerGCCToolChainProvider.java index 754eec9608c..b33f8718bc5 100644 --- a/launch/org.eclipse.cdt.docker.launcher/src/org/eclipse/cdt/internal/docker/launcher/ui/launchbar/ContainerGCCToolChainProvider.java +++ b/launch/org.eclipse.cdt.docker.launcher/src/org/eclipse/cdt/internal/docker/launcher/ui/launchbar/ContainerGCCToolChainProvider.java @@ -164,7 +164,9 @@ public class ContainerGCCToolChainProvider implements IToolChainProvider, IDocke try { String connectionURI = connection.getUri(); Collection toolChains = toolChainManager.getAllToolChains(); - for (IToolChain toolChain : toolChains) { + IToolChain[] toolChainArray = toolChains.toArray(new IToolChain[0]); + for (int i = 0; i < toolChains.size(); ++i) { + IToolChain toolChain = toolChainArray[i]; String uri = toolChain.getProperty(IContainerLaunchTarget.ATTR_CONNECTION_URI); if (connectionURI.equals(uri)) { toolChainManager.removeToolChain(toolChain); -- cgit v1.2.3