From d13c88e70de9b3fd61c526ead90716fac503deed Mon Sep 17 00:00:00 2001 From: Marcos Casagrande Date: Mon, 3 Oct 2022 13:34:13 +0200 Subject: [PATCH] refactor(ext/fetch): avoid extra headers copy in .clone (#16130) --- ext/fetch/23_request.js | 11 +++++------ ext/fetch/23_response.js | 10 +++++----- 2 files changed, 10 insertions(+), 11 deletions(-) diff --git a/ext/fetch/23_request.js b/ext/fetch/23_request.js index 5221d5ca915d75..508a2913949f84 100644 --- a/ext/fetch/23_request.js +++ b/ext/fetch/23_request.js @@ -35,7 +35,6 @@ ObjectKeys, ObjectPrototypeIsPrototypeOf, RegExpPrototypeTest, - SafeArrayIterator, Symbol, SymbolFor, TypeError, @@ -159,11 +158,11 @@ * @returns {InnerRequest} */ function cloneInnerRequest(request) { - const headerList = [ - ...new SafeArrayIterator( - ArrayPrototypeMap(request.headerList, (x) => [x[0], x[1]]), - ), - ]; + const headerList = ArrayPrototypeMap( + request.headerList, + (x) => [x[0], x[1]], + ); + let body = null; if (request.body !== null) { body = request.body.clone(); diff --git a/ext/fetch/23_response.js b/ext/fetch/23_response.js index 3c19f963a83d34..d5adb80428ae06 100644 --- a/ext/fetch/23_response.js +++ b/ext/fetch/23_response.js @@ -97,11 +97,11 @@ */ function cloneInnerResponse(response) { const urlList = [...new SafeArrayIterator(response.urlList)]; - const headerList = [ - ...new SafeArrayIterator( - ArrayPrototypeMap(response.headerList, (x) => [x[0], x[1]]), - ), - ]; + const headerList = ArrayPrototypeMap( + response.headerList, + (x) => [x[0], x[1]], + ); + let body = null; if (response.body !== null) { body = response.body.clone();