From 438aaf9e956a47691b28898c098dea0eb4ccc932 Mon Sep 17 00:00:00 2001 From: Alistair Smith Date: Fri, 5 Dec 2025 11:14:45 -0800 Subject: [PATCH] use event.message when no event.error in HMR during event --- packages/bun-error/index.tsx | 1 - src/bake/hmr-runtime-client.ts | 12 +++++++++++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/packages/bun-error/index.tsx b/packages/bun-error/index.tsx index 179c31cc5e..e31a9c440f 100644 --- a/packages/bun-error/index.tsx +++ b/packages/bun-error/index.tsx @@ -615,7 +615,6 @@ const NativeStackFrame = ({
{getNativeStackFrameIdentifier(frame)} diff --git a/src/bake/hmr-runtime-client.ts b/src/bake/hmr-runtime-client.ts index bebe2dcc34..2de6b23f5b 100644 --- a/src/bake/hmr-runtime-client.ts +++ b/src/bake/hmr-runtime-client.ts @@ -237,8 +237,18 @@ function onHmrLoadError(event: Event | string, source?: string, lineno?: number, } window.addEventListener("error", event => { - onRuntimeError(event.error, true, false); + // In rare cases the error property might be null + // but it's unlikely that both error and message are gone + const value = event.error || event.message; + if (!value) { + console.log( + "[Bun] The HMR client detected a runtime error, but no useful value was found. Below is the full error event:", + ); + console.log(event); + } + onRuntimeError(value, true, false); }); + window.addEventListener("unhandledrejection", event => { onRuntimeError(event.reason, true, true); });