From c3426fd9c565fbcc9d082b7fcc6567b96db70511 Mon Sep 17 00:00:00 2001 From: sun-yryr Date: Wed, 10 Dec 2025 00:56:58 +0900 Subject: [PATCH] fix: chrome.runtime.sendMessage now returns a Promise --- src/messaging/implementation.ts | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/messaging/implementation.ts b/src/messaging/implementation.ts index e6999753..d74ac457 100644 --- a/src/messaging/implementation.ts +++ b/src/messaging/implementation.ts @@ -7,7 +7,11 @@ export function buildMessenger(chromeApi: ChromeApi): CrossScriptMessenger { chromeApi.runtime.onMessage.addListener(callback); }, send(message) { - chromeApi.runtime.sendMessage(message); + // In manifest v3, sendMessage returns a Promise that rejects if no receiver exists. + // We need to catch and ignore this error to prevent uncaught promise rejections. + chromeApi.runtime.sendMessage(message).catch((error) => { + console.debug("Message send failed", { message, error }); + }); }, }; }