Removal of cached destination is now moved outside the for loop
that removes subscriptions to avoid ConcurrentModificationException.
Also since updateCache is a LinkedHashMap with accessOrder=true,
a simple access with updateCache.get() modify the map.
By iterating over updateCache.entrySet(), we avoid this update.
Issue: SPR-11755
pull/538/head
Sebastien Deleuze12 years agocommitted byRossen Stoyanchev
@ -55,7 +55,6 @@ public class DefaultSubscriptionRegistry extends AbstractSubscriptionRegistry {
@@ -55,7 +55,6 @@ public class DefaultSubscriptionRegistry extends AbstractSubscriptionRegistry {
@ -176,9 +175,10 @@ public class DefaultSubscriptionRegistry extends AbstractSubscriptionRegistry {
@@ -176,9 +175,10 @@ public class DefaultSubscriptionRegistry extends AbstractSubscriptionRegistry {
@ -188,42 +188,52 @@ public class DefaultSubscriptionRegistry extends AbstractSubscriptionRegistry {
@@ -188,42 +188,52 @@ public class DefaultSubscriptionRegistry extends AbstractSubscriptionRegistry {