Index: Source/devtools/front_end/sdk/ServiceWorkerManager.js |
diff --git a/Source/devtools/front_end/sdk/ServiceWorkerManager.js b/Source/devtools/front_end/sdk/ServiceWorkerManager.js |
index 1436c99e32ace83b89e5f2b0a17d0d92cfe4beb9..ffdbb97914f635df3970a0bdd4825a33f1631b7c 100644 |
--- a/Source/devtools/front_end/sdk/ServiceWorkerManager.js |
+++ b/Source/devtools/front_end/sdk/ServiceWorkerManager.js |
@@ -376,10 +376,11 @@ WebInspector.ServiceWorker = function(manager, workerId, url) |
*/ |
function targetCreated(target) |
{ |
- if (!target) { |
+ if (!this._connection || !target) { |
this._manager._workers.delete(workerId); |
return; |
} |
+ this._target = target; |
this._manager.dispatchEventToListeners(WebInspector.ServiceWorkerManager.Events.WorkersUpdated); |
target.runtimeAgent().run(); |
} |
@@ -419,7 +420,10 @@ WebInspector.ServiceWorker.prototype = { |
_closeConnection: function() |
{ |
+ if (!this._target) |
dgozman
2015/08/28 00:23:53
Why this check? Should close connection anyway.
pfeldman
2015/08/28 17:17:23
If the target is missing, it means connection did
|
+ return; |
this._connection._close(); |
+ delete this._connection; |
} |
} |