diff options
author | 2022-03-15 05:19:54 -0700 | |
---|---|---|
committer | 2022-03-15 05:19:54 -0700 | |
commit | e866fa12034fc9387851e8ff33186e8b235b5f76 (patch) | |
tree | eb9206e0fc2f0ae51810e8b5306dd23d7db170ee | |
parent | 90940ec240a6e329e96a99d74f6dd3b9523cd70f (diff) | |
download | bun-e866fa12034fc9387851e8ff33186e8b235b5f76.tar.gz bun-e866fa12034fc9387851e8ff33186e8b235b5f76.tar.zst bun-e866fa12034fc9387851e8ff33186e8b235b5f76.zip |
[bun:error] handle errors without a name or message
Diffstat (limited to '')
-rw-r--r-- | packages/bun-error/index.tsx | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/packages/bun-error/index.tsx b/packages/bun-error/index.tsx index 05c378f8f..832343504 100644 --- a/packages/bun-error/index.tsx +++ b/packages/bun-error/index.tsx @@ -863,6 +863,11 @@ const JSException = ({ const [sourceLines, _setSourceLines] = React.useState( value?.stack?.source_lines ?? [] ); + var message = value.message || ""; + var name = value.name || ""; + if (!name && !message) { + name = `Unknown error`; + } // mutating a prop is sacrilege function setSourceLines(sourceLines: SourceLine[]) { @@ -924,15 +929,15 @@ const JSException = ({ } default: { - const newline = value.message.indexOf("\n"); + const newline = message.indexOf("\n"); if (newline > -1) { - const subtitle = value.message.substring(newline + 1).trim(); - const message = value.message.substring(0, newline).trim(); + const subtitle = message.substring(newline + 1).trim(); + const message = message.substring(0, newline).trim(); if (subtitle.length) { return ( <div className={`BunError-JSException`}> <div className="BunError-error-header"> - <div className={`BunError-error-code`}>{value.name}</div> + <div className={`BunError-error-code`}>{name}</div> {errorTags[tag]} </div> @@ -955,11 +960,11 @@ const JSException = ({ return ( <div className={`BunError-JSException`}> <div className="BunError-error-header"> - <div className={`BunError-error-code`}>{value.name}</div> + <div className={`BunError-error-code`}>{name}</div> {errorTags[tag]} </div> - <div className={`BunError-error-message`}>{value.message}</div> + <div className={`BunError-error-message`}>{message}</div> {value.stack && ( <NativeStackTrace |