summaryrefslogtreecommitdiffstats
path: root/priv/bullet.js
diff options
context:
space:
mode:
Diffstat (limited to 'priv/bullet.js')
-rw-r--r--priv/bullet.js10
1 files changed, 10 insertions, 0 deletions
diff --git a/priv/bullet.js b/priv/bullet.js
index 3a378f6..4ba2cb8 100644
--- a/priv/bullet.js
+++ b/priv/bullet.js
@@ -169,6 +169,7 @@
}
var stream = new function(){
+ var isClosed = true;
var readyState = CLOSED;
var heartbeat;
var delay = delayDefault = 80;
@@ -176,6 +177,7 @@
var transport;
function init(){
+ isClosed = false;
readyState = CONNECTING;
transport = next();
@@ -202,6 +204,12 @@
}
};
transport.onclose = function(){
+ // Firefox 13.0.1 sends 2 close events.
+ // Return directly if we already handled it.
+ if (isClosed){
+ return;
+ }
+
clearInterval(heartbeat);
if (readyState == CLOSING){
@@ -218,6 +226,8 @@
delay = delayMax;
}
+ isClosed = true;
+
setTimeout(function(){
init();
}, delay);