diff options
author | Luca Casonato <hello@lcas.dev> | 2024-09-18 21:14:40 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-09-18 21:14:40 +0200 |
commit | 7a41a939972b701e96cb70cbf0516595fefcae02 (patch) | |
tree | ad05a7c97c9eec410c5f853f97b11c67e25672b5 /ext/http/00_serve.ts | |
parent | ab1e391e1d700a68964e899963670e903f498cdf (diff) |
fix(ext/http): gracefully handle Response.error responses (#25712)
Fixes #14371
Diffstat (limited to 'ext/http/00_serve.ts')
-rw-r--r-- | ext/http/00_serve.ts | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/ext/http/00_serve.ts b/ext/http/00_serve.ts index 87798656f..6d23685d8 100644 --- a/ext/http/00_serve.ts +++ b/ext/http/00_serve.ts @@ -511,9 +511,15 @@ function mapToCallback(context, callback, onError) { ); } + if (response.type === "error") { + throw new TypeError( + "Return value from serve handler must not be an error response (like Response.error())", + ); + } + if (response.bodyUsed) { throw new TypeError( - "The body of the Response returned from the serve handler has already been consumed.", + "The body of the Response returned from the serve handler has already been consumed", ); } } catch (error) { |