summaryrefslogtreecommitdiffstats
path: root/client/src/com/vaadin
diff options
context:
space:
mode:
authorLeif Åstrand <leif@vaadin.com>2013-04-24 12:53:26 +0300
committerVaadin Code Review <review@vaadin.com>2013-04-24 09:53:54 +0000
commitdfe27b2deb165501fdceff0a7498ea7332879a93 (patch)
treea5b767837f1132c1663133d9ff76465f0b9f9ac7 /client/src/com/vaadin
parent4cf5d070936f43819ca62cd3915cb87fcd94a4f0 (diff)
downloadvaadin-framework-dfe27b2deb165501fdceff0a7498ea7332879a93.tar.gz
vaadin-framework-dfe27b2deb165501fdceff0a7498ea7332879a93.zip
Avoid excessive logging related to response handling locks (#11702)
Change-Id: I0e50663a2500c56a042d20c80909aacfc707a5dd
Diffstat (limited to 'client/src/com/vaadin')
-rw-r--r--client/src/com/vaadin/client/ApplicationConnection.java16
1 files changed, 14 insertions, 2 deletions
diff --git a/client/src/com/vaadin/client/ApplicationConnection.java b/client/src/com/vaadin/client/ApplicationConnection.java
index 93a2e90c07..375beb9dda 100644
--- a/client/src/com/vaadin/client/ApplicationConnection.java
+++ b/client/src/com/vaadin/client/ApplicationConnection.java
@@ -3287,6 +3287,14 @@ public class ApplicationConnection {
Timer forceHandleMessage = new Timer() {
@Override
public void run() {
+ if (responseHandlingLocks.isEmpty()) {
+ /*
+ * Timer fired but there's nothing to clear. This can happen
+ * with IE8 as Timer.cancel is not always effective (see GWT
+ * issue 8101).
+ */
+ return;
+ }
VConsole.log("WARNING: reponse handling was never resumed, forcibly removing locks...");
responseHandlingLocks.clear();
handlePendingMessages();
@@ -3311,9 +3319,13 @@ public class ApplicationConnection {
public void resumeResponseHandling(Object lock) {
responseHandlingLocks.remove(lock);
if (responseHandlingLocks.isEmpty()) {
- VConsole.log("No more response handling locks, handling pending requests.");
+ // Cancel timer that breaks the lock
forceHandleMessage.cancel();
- handlePendingMessages();
+
+ if (!pendingUIDLMessages.isEmpty()) {
+ VConsole.log("No more response handling locks, handling pending requests.");
+ handlePendingMessages();
+ }
}
}