From dc1bf3a36d174e6cef4e8875055ce834e05244ed Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Fri, 27 Nov 2015 11:54:26 +0530 Subject: [PATCH] Close auto reload websocket on page unload --- resources/content-server/autoreload.js | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/resources/content-server/autoreload.js b/resources/content-server/autoreload.js index f4f76112ae..931615e8d5 100644 --- a/resources/content-server/autoreload.js +++ b/resources/content-server/autoreload.js @@ -14,6 +14,7 @@ self = this; self.retries = 0; self.interval = 100; + self.disable = false; self.reconnect = function() { self.ws = new WebSocket(url); @@ -22,6 +23,11 @@ self.retries = 0; self.interval = 100; console.log('Connected to reloading WebSocket server at port: ' + autoreload_port); + window.addEventListener('beforeunload', function (event) { + console.log('Shutting down connection to reload server, before page unload'); + self.disable = true; + self.ws.close(); + }); }; self.ws.onmessage = function(event) { @@ -30,6 +36,7 @@ }; self.ws.onclose = function(event) { + if (self.disabled) return; console.log('Connection to reload server closed with code: ' + event.code + ' and reason: ' + event.reason); self.retries += 1; if (self.retries < MAX_RETRIES) {