fix: prevent crash if BrowserView webContents was destroyed (#25112)
This commit is contained in:
parent
c97f8109c2
commit
c8a0b2b71d
6 changed files with 41 additions and 32 deletions
|
|
@ -134,20 +134,31 @@ describe('BrowserView module', () => {
|
|||
w.addBrowserView(view2);
|
||||
defer(() => w.removeBrowserView(view2));
|
||||
});
|
||||
|
||||
it('does not throw if called multiple times with same view', () => {
|
||||
view = new BrowserView();
|
||||
w.addBrowserView(view);
|
||||
w.addBrowserView(view);
|
||||
w.addBrowserView(view);
|
||||
});
|
||||
|
||||
it('does not crash if the BrowserView webContents are destroyed prior to window removal', () => {
|
||||
expect(() => {
|
||||
const view1 = new BrowserView();
|
||||
(view1.webContents as any).destroy();
|
||||
w.addBrowserView(view1);
|
||||
}).to.not.throw();
|
||||
});
|
||||
});
|
||||
|
||||
describe('BrowserWindow.removeBrowserView()', () => {
|
||||
it('does not throw if called multiple times with same view', () => {
|
||||
view = new BrowserView();
|
||||
w.addBrowserView(view);
|
||||
w.removeBrowserView(view);
|
||||
w.removeBrowserView(view);
|
||||
expect(() => {
|
||||
view = new BrowserView();
|
||||
w.addBrowserView(view);
|
||||
w.removeBrowserView(view);
|
||||
w.removeBrowserView(view);
|
||||
}).to.not.throw();
|
||||
});
|
||||
});
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue