diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-06-12 05:35:37 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-06-12 05:35:37 +0000 |
commit | a90a5cba08fdf6c0ceb95101c275108a152a3aed (patch) | |
tree | 532507288f3defd7f4dcf1af49698bcb76034855 /devtools/server/actors/watcher.js | |
parent | Adding debian version 126.0.1-1. (diff) | |
download | firefox-a90a5cba08fdf6c0ceb95101c275108a152a3aed.tar.xz firefox-a90a5cba08fdf6c0ceb95101c275108a152a3aed.zip |
Merging upstream version 127.0.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'devtools/server/actors/watcher.js')
-rw-r--r-- | devtools/server/actors/watcher.js | 78 |
1 files changed, 60 insertions, 18 deletions
diff --git a/devtools/server/actors/watcher.js b/devtools/server/actors/watcher.js index 10de102229..34d2509420 100644 --- a/devtools/server/actors/watcher.js +++ b/devtools/server/actors/watcher.js @@ -258,10 +258,24 @@ exports.WatcherActor = class WatcherActor extends Actor { continue; } promises.push( - domProcess.getActor(this._jsActorName).watchTargets({ - watcherActorID: this.actorID, - targetType, - }) + domProcess + .getActor(this._jsActorName) + .watchTargets({ + watcherActorID: this.actorID, + targetType, + }) + .catch(e => { + // Ignore any process that got destroyed while trying to send the request + if (!domProcess.canSend) { + console.warn( + "Content process closed while requesting targets", + domProcess.name, + domProcess.remoteType + ); + return; + } + throw e; + }) ); } await Promise.all(promises); @@ -561,13 +575,27 @@ exports.WatcherActor = class WatcherActor extends Actor { const domProcesses = ChromeUtils.getAllDOMProcesses(); for (const domProcess of domProcesses) { promises.push( - domProcess.getActor(this._jsActorName).addOrSetSessionDataEntry({ - watcherActorID: this.actorID, - sessionContext: this.sessionContext, - type: "resources", - entries: resourceTypes, - updateType: "add", - }) + domProcess + .getActor(this._jsActorName) + .addOrSetSessionDataEntry({ + watcherActorID: this.actorID, + sessionContext: this.sessionContext, + type: "resources", + entries: resourceTypes, + updateType: "add", + }) + .catch(e => { + // Ignore any process that got destroyed while trying to send the request + if (!domProcess.canSend) { + console.warn( + "Content process closed while requesting resources", + domProcess.name, + domProcess.remoteType + ); + return; + } + throw e; + }) ); } await Promise.all(promises); @@ -769,13 +797,27 @@ exports.WatcherActor = class WatcherActor extends Actor { const domProcesses = ChromeUtils.getAllDOMProcesses(); for (const domProcess of domProcesses) { promises.push( - domProcess.getActor(this._jsActorName).addOrSetSessionDataEntry({ - watcherActorID: this.actorID, - sessionContext: this.sessionContext, - type, - entries, - updateType, - }) + domProcess + .getActor(this._jsActorName) + .addOrSetSessionDataEntry({ + watcherActorID: this.actorID, + sessionContext: this.sessionContext, + type, + entries, + updateType, + }) + .catch(e => { + // Ignore any process that got destroyed while trying to send the request + if (!domProcess.canSend) { + console.warn( + "Content process closed while sending session data", + domProcess.name, + domProcess.remoteType + ); + return; + } + throw e; + }) ); } await Promise.all(promises); |