Bug 478801 - Error on shutdown while unbinding OSGi GraphicNodeProvider services
diff --git a/bundles/runtime/org.eclipse.fx.ui.workbench.fx/src/org/eclipse/fx/ui/workbench/fx/internal/ProviderComponent.java b/bundles/runtime/org.eclipse.fx.ui.workbench.fx/src/org/eclipse/fx/ui/workbench/fx/internal/ProviderComponent.java
index c1de7ce..4bf0f5c 100644
--- a/bundles/runtime/org.eclipse.fx.ui.workbench.fx/src/org/eclipse/fx/ui/workbench/fx/internal/ProviderComponent.java
+++ b/bundles/runtime/org.eclipse.fx.ui.workbench.fx/src/org/eclipse/fx/ui/workbench/fx/internal/ProviderComponent.java
@@ -156,8 +156,10 @@
 		synchronized (this.graphicProviderBySuffix) {

 			for (Set<RankedEntry<GraphicNodeProvider>> set : this.graphicProviderBySuffix.values()) {

 				Iterator<RankedEntry<GraphicNodeProvider>> it = set.iterator();

-				if (it.next().provider == provider) {

-					it.remove();

+				while( it.hasNext() ) {

+					if (it.next().provider == provider) {

+						it.remove();

+					}

 				}

 			}

 		}