asf
This commit is contained in:
parent
b65b55f840
commit
f1af4c9466
|
|
@ -360,15 +360,21 @@ export abstract class BrowserContext extends SdkObject {
|
||||||
}
|
}
|
||||||
|
|
||||||
async _loadDefaultContextAsIs(progress: Progress): Promise<Page> {
|
async _loadDefaultContextAsIs(progress: Progress): Promise<Page> {
|
||||||
|
let pageOrError;
|
||||||
if (!this.pagesOrErrors().length) {
|
if (!this.pagesOrErrors().length) {
|
||||||
const waitForEvent = helper.waitForEvent(progress, this, BrowserContext.Events.Page);
|
const waitForEvent = helper.waitForEvent(progress, this, BrowserContext.Events.Page);
|
||||||
progress.cleanupWhenAborted(() => waitForEvent.dispose);
|
progress.cleanupWhenAborted(() => waitForEvent.dispose);
|
||||||
const page = await waitForEvent.promise as Page;
|
// Race against BrowserContext.close
|
||||||
const pageOrError = await page._delegate.pageOrError();
|
pageOrError = await Promise.race([
|
||||||
if (pageOrError instanceof Error)
|
waitForEvent.promise as Promise<Page>,
|
||||||
throw pageOrError;
|
this._closePromise,
|
||||||
|
]);
|
||||||
|
// Consider Page initialization errors
|
||||||
|
if (pageOrError instanceof Page)
|
||||||
|
pageOrError = await pageOrError._delegate.pageOrError();
|
||||||
|
} else {
|
||||||
|
pageOrError = await this.pagesOrErrors()[0];
|
||||||
}
|
}
|
||||||
const pageOrError = await this.pagesOrErrors()[0];
|
|
||||||
if (pageOrError instanceof Error)
|
if (pageOrError instanceof Error)
|
||||||
throw pageOrError;
|
throw pageOrError;
|
||||||
await pageOrError.mainFrame()._waitForLoadState(progress, 'load');
|
await pageOrError.mainFrame()._waitForLoadState(progress, 'load');
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue