fix: ensure the webContents is not destroyed before communicating (#18467)
This commit is contained in:
parent
815b9d7707
commit
93b8dc2362
1 changed files with 5 additions and 3 deletions
|
@ -115,7 +115,9 @@ const removeBackgroundPages = function (manifest) {
|
|||
|
||||
const sendToBackgroundPages = function (...args) {
|
||||
for (const page of Object.values(backgroundPages)) {
|
||||
page.webContents._sendInternalToAll(...args)
|
||||
if (!page.webContents.isDestroyed()) {
|
||||
page.webContents._sendInternalToAll(...args)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -161,7 +163,7 @@ ipcMainUtils.handle('CHROME_RUNTIME_CONNECT', function (event, extensionId, conn
|
|||
}
|
||||
|
||||
const page = backgroundPages[extensionId]
|
||||
if (!page) {
|
||||
if (!page || page.webContents.isDestroyed()) {
|
||||
throw new Error(`Connect to unknown extension ${extensionId}`)
|
||||
}
|
||||
|
||||
|
@ -191,7 +193,7 @@ ipcMainUtils.handle('CHROME_RUNTIME_SEND_MESSAGE', async function (event, extens
|
|||
}
|
||||
|
||||
const page = backgroundPages[extensionId]
|
||||
if (!page) {
|
||||
if (!page || page.webContents.isDestroyed()) {
|
||||
throw new Error(`Connect to unknown extension ${extensionId}`)
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue