From 7616ffe16724e39f7b4a710b208852bedb3cdced Mon Sep 17 00:00:00 2001 From: Matt Mastracci Date: Tue, 25 Jul 2023 18:12:19 -0400 Subject: [PATCH] fix(ext/http): Quietly ignore invalid status codes (#19936) --- ext/http/http_next.rs | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/ext/http/http_next.rs b/ext/http/http_next.rs index 5635fbd4be..cd63bc8991 100644 --- a/ext/http/http_next.rs +++ b/ext/http/http_next.rs @@ -214,8 +214,11 @@ pub async fn op_http_upgrade_websocket_next( #[op2(fast)] pub fn op_http_set_promise_complete(#[smi] slab_id: SlabId, status: u16) { let mut http = slab_get(slab_id); - // The Javascript code will never provide a status that is invalid here (see 23_response.js) - *http.response().status_mut() = StatusCode::from_u16(status).unwrap(); + // The Javascript code should never provide a status that is invalid here (see 23_response.js), so we + // will quitely ignore invalid values. + if let Ok(code) = StatusCode::from_u16(status) { + *http.response().status_mut() = code; + } http.complete(); }