locationtech / udig-platform

uDig parent project containing all core components. More plugins can be found in community repos: http://github.com/uDig-Community
http://udig.refractions.net
190 stars 133 forks source link

Fix diverse causes for ConcurrentModificationException in RendererCreatorImpl #641

Closed olsmn closed 2 years ago

olsmn commented 2 years ago

as seen e.g. in following stacktrace: Caused by: java.util.ConcurrentModificationException at java.util.ArrayList.sort(ArrayList.java:1464) at java.util.Collections.sort(Collections.java:175) at org.locationtech.udig.project.internal.render.impl.RendererCreatorImpl.createConfiguration(RendererCreatorImpl.java:246) at org.locationtech.udig.project.internal.render.impl.RendererCreatorImpl.getConfiguration(RendererCreatorImpl.java:630) at org.locationtech.udig.project.internal.render.impl.RendererCreatorImpl.reset(RendererCreatorImpl.java:661) at org.locationtech.udig.project.ui.internal.RenderManagerDynamic.refresh(RenderManagerDynamic.java:119) at org.locationtech.udig.project.internal.impl.LayerImpl.refresh(LayerImpl.java:2107) at org.locationtech.udig.project.ui.internal.RenderManagerAdapters.synchronizeAndRefresh(RenderManagerAdapters.java:281) at org.locationtech.udig.project.ui.internal.RenderManagerAdapters.access$0(RenderManagerAdapters.java:278) at org.locationtech.udig.project.ui.internal.RenderManagerAdapters$3.layerAdded(RenderManagerAdapters.java:159) at org.locationtech.udig.project.internal.ContextModelListenerAdapter.notifyChanged(ContextModelListenerAdapter.java:82) at org.locationtech.udig.project.ui.internal.RenderManagerAdapters$3.notifyChanged(RenderManagerAdapters.java:140) at org.eclipse.emf.common.notify.impl.BasicNotifierImpl.eNotify(BasicNotifierImpl.java:424) at org.eclipse.emf.common.notify.impl.NotificationImpl.dispatch(NotificationImpl.java:1027) at org.eclipse.emf.common.notify.impl.NotificationImpl.dispatch(NotificationImpl.java:1032) at org.eclipse.emf.common.notify.impl.NotifyingListImpl.addAllUnique(NotifyingListImpl.java:462) at org.eclipse.emf.common.util.AbstractEList.addAll(AbstractEList.java:403)

Change-Id: I6c9ae4c7ad1bd6caeacaa041ed1d6f5f67c70f01 Signed-off-by: Oliver Schumann olsmn@quantentunnel.de