summaryrefslogtreecommitdiffstats
path: root/client
diff options
context:
space:
mode:
Diffstat (limited to 'client')
-rw-r--r--client/src/main/java/com/vaadin/client/LayoutManager.java7
1 files changed, 4 insertions, 3 deletions
diff --git a/client/src/main/java/com/vaadin/client/LayoutManager.java b/client/src/main/java/com/vaadin/client/LayoutManager.java
index ad0a3f8c38..878ac17901 100644
--- a/client/src/main/java/com/vaadin/client/LayoutManager.java
+++ b/client/src/main/java/com/vaadin/client/LayoutManager.java
@@ -350,9 +350,12 @@ public class LayoutManager {
int firedListeners = 0;
if (!listenersToFire.isEmpty()) {
+ HashSet<Element> listenersCopy = new HashSet<Element>(
+ listenersToFire);
+ listenersToFire.clear();
firedListeners = listenersToFire.size();
Profiler.enter("Layout fire resize events");
- for (Element element : listenersToFire) {
+ for (Element element : listenersCopy) {
Collection<ElementResizeListener> listeners = elementResizeListeners
.get(element);
if (listeners != null) {
@@ -393,8 +396,6 @@ public class LayoutManager {
"Layout fire resize events - listeners not null");
}
}
- listenersToFire.clear();
-
Profiler.leave("Layout fire resize events");
}