From 76f527597567cecc932501b0ad5f68ee9119c636 Mon Sep 17 00:00:00 2001 From: Andrew Branson Date: Mon, 8 Jul 2013 16:04:44 +0200 Subject: Copy tree sub keys before notifying. Fixes #131 --- src/main/java/com/c2kernel/entity/proxy/EntityProxyManager.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/c2kernel/entity/proxy/EntityProxyManager.java b/src/main/java/com/c2kernel/entity/proxy/EntityProxyManager.java index 192a984..9f134f0 100644 --- a/src/main/java/com/c2kernel/entity/proxy/EntityProxyManager.java +++ b/src/main/java/com/c2kernel/entity/proxy/EntityProxyManager.java @@ -129,10 +129,11 @@ public class EntityProxyManager DomainPath parent; boolean first = true; synchronized(treeSubscribers) { while((parent = last.getParent()) != null) { - - for (DomainPathSubscriber sub : treeSubscribers.keySet()) { + ArrayList currentKeys = new ArrayList(); + currentKeys.addAll(treeSubscribers.keySet()); + for (DomainPathSubscriber sub : currentKeys) { DomainPath interest = treeSubscribers.get(sub); - if (interest.equals(parent)) { + if (interest!= null && interest.equals(parent)) { if (state == ProxyMessage.ADDED) sub.pathAdded(last); else if (first) -- cgit v1.2.3