Bug 1313063 - Only stop observing `dom.push.userAgentID` if we've finished the handshake. r?dragana draft
authorKit Cambridge <kit@yakshaving.ninja>
Thu, 27 Oct 2016 08:55:50 -0700
changeset 430309 13a830424b1c116b8f2035ea1ec908b3f90c0026
parent 429408 b1b18f25c0ea69d9ee57c4198d577dfcd0129ce1
child 535186 91a0ea3e8db48b4a4f8098671daf090045de6b54
push id33805
push userbmo:kcambridge@mozilla.com
push dateThu, 27 Oct 2016 15:56:54 +0000
reviewersdragana
bugs1313063
milestone52.0a1
Bug 1313063 - Only stop observing `dom.push.userAgentID` if we've finished the handshake. r?dragana MozReview-Commit-ID: 8yjJfbXHLD5
dom/push/PushServiceWebSocket.jsm
--- a/dom/push/PushServiceWebSocket.jsm
+++ b/dom/push/PushServiceWebSocket.jsm
@@ -336,21 +336,24 @@ this.PushServiceWebSocket = {
   _reconnect: function () {
     console.debug("reconnect()");
     this._shutdownWS(false);
     this._startBackoffTimer();
   },
 
   _shutdownWS: function(shouldCancelPending = true) {
     console.debug("shutdownWS()");
+
+    if (this._currentState == STATE_READY) {
+      prefs.ignore("userAgentID", this);
+    }
+
     this._currentState = STATE_SHUT_DOWN;
     this._skipReconnect = false;
 
-    prefs.ignore("userAgentID", this);
-
     if (this._wsListener) {
       this._wsListener._pushService = null;
     }
     try {
         this._ws.close(0, null);
     } catch (e) {}
     this._ws = null;