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);
});