From a91941455350c307882231089cb2575c19b9d708 Mon Sep 17 00:00:00 2001 From: Yury Semikhatsky Date: Wed, 4 May 2022 10:00:02 -0700 Subject: [PATCH] feat(chromium): roll tot, ignore unknown session error (#13932) After https://chromium-review.googlesource.com/c/chromium/src/+/3606712 browser returns an error to messages addressed to unknown session id (previously such messages would never get a response). #13637 --- packages/playwright-core/src/server/chromium/crConnection.ts | 2 ++ packages/playwright-core/src/server/transport.ts | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/playwright-core/src/server/chromium/crConnection.ts b/packages/playwright-core/src/server/chromium/crConnection.ts index 520fe2709c..791f91a902 100644 --- a/packages/playwright-core/src/server/chromium/crConnection.ts +++ b/packages/playwright-core/src/server/chromium/crConnection.ts @@ -189,6 +189,8 @@ export class CRSession extends EventEmitter { callback.reject(createProtocolError(callback.error, callback.method, object.error)); else callback.resolve(object.result); + } else if (object.id && object.error?.code === -32001) { + // Message to a closed session, just ignore it. } else { assert(!object.id); Promise.resolve().then(() => { diff --git a/packages/playwright-core/src/server/transport.ts b/packages/playwright-core/src/server/transport.ts index b59de1c3c9..bcb9919902 100644 --- a/packages/playwright-core/src/server/transport.ts +++ b/packages/playwright-core/src/server/transport.ts @@ -31,7 +31,7 @@ export type ProtocolResponse = { id?: number; method?: string; sessionId?: string; - error?: { message: string; data: any; }; + error?: { message: string; data: any; code?: number }; params?: any; result?: any; pageProxyId?: string;