diff --git a/packages/playwright-core/src/server/chromium/chromium.ts b/packages/playwright-core/src/server/chromium/chromium.ts index 26ba870dbb..a30be361e7 100644 --- a/packages/playwright-core/src/server/chromium/chromium.ts +++ b/packages/playwright-core/src/server/chromium/chromium.ts @@ -359,7 +359,7 @@ export class Chromium extends BrowserType { } class ChromiumReadyState implements BrowserReadyState { - private readonly _wsEndpoint = new ManualPromise(); + private readonly _wsEndpoint = new ManualPromise(); onBrowserOutput(message: string): void { const match = message.match(/DevTools listening on (.*)/); @@ -367,7 +367,7 @@ class ChromiumReadyState implements BrowserReadyState { this._wsEndpoint.resolve(match[1]); } onBrowserExit(): void { - this._wsEndpoint.reject(new Error('Browser exited')); + this._wsEndpoint.resolve(undefined); } async waitUntilReady(): Promise<{ wsEndpoint?: string }> { const wsEndpoint = await this._wsEndpoint; diff --git a/packages/playwright-core/src/server/firefox/firefox.ts b/packages/playwright-core/src/server/firefox/firefox.ts index 45449b1757..ed2709b685 100644 --- a/packages/playwright-core/src/server/firefox/firefox.ts +++ b/packages/playwright-core/src/server/firefox/firefox.ts @@ -104,7 +104,7 @@ class JugglerReadyState implements BrowserReadyState { } onBrowserExit(): void { // Unblock launch when browser prematurely exits. - this._jugglerPromise.reject(new Error('Browser exited')); + this._jugglerPromise.resolve(); } async waitUntilReady(): Promise<{ wsEndpoint?: string }> { await this._jugglerPromise;