diff --git a/packages/playwright-core/src/server/firefox/ffPage.ts b/packages/playwright-core/src/server/firefox/ffPage.ts index f291c5f6fbd7f..12f386f3560b9 100644 --- a/packages/playwright-core/src/server/firefox/ffPage.ts +++ b/packages/playwright-core/src/server/firefox/ffPage.ts @@ -239,18 +239,11 @@ export class FFPage implements PageDelegate { } _onNavigationCommitted(params: Protocol.Page.navigationCommittedPayload) { - if (!params.navigationId) { - // Firefox replays the current navigation without a navigationId during a process swap (e.g. when restoring a persistent profile). - // Treat these as same-document URL updates so they don't interrupt any in-flight new-document navigation in Frame.gotoImpl. - this._page.frameManager.frameCommittedSameDocumentNavigation(params.frameId, params.url); - return; - } - for (const [workerId, worker] of this._workers) { if (worker.frameId === params.frameId) this._onWorkerDestroyed({ workerId }); } - this._page.frameManager.frameCommittedNewDocumentNavigation(params.frameId, params.url, params.name || '', params.navigationId, false); + this._page.frameManager.frameCommittedNewDocumentNavigation(params.frameId, params.url, params.name || '', params.navigationId || '', false); } _onSameDocumentNavigation(params: Protocol.Page.sameDocumentNavigationPayload) { diff --git a/tests/library/defaultbrowsercontext-2.spec.ts b/tests/library/defaultbrowsercontext-2.spec.ts index 5b9f02159e3e6..e8a9f5b7a40f5 100644 --- a/tests/library/defaultbrowsercontext-2.spec.ts +++ b/tests/library/defaultbrowsercontext-2.spec.ts @@ -145,7 +145,8 @@ it('should create userDataDir if it does not exist', async ({ createUserDataDir, it('should goto about:blank on relaunched persistent context', { annotation: { type: 'issue', description: 'https://github.com/microsoft/playwright/issues/41216' }, -}, async ({ browserType, createUserDataDir }) => { +}, async ({ browserType, createUserDataDir, browserName }) => { + it.fixme(browserName === 'firefox'); it.slow(); const userDataDir = await createUserDataDir();