diff options
author | Bartek IwaĆczuk <biwanczuk@gmail.com> | 2022-02-07 13:54:32 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-02-07 13:54:32 +0100 |
commit | bf22f114a6e049744866ebaba48faec2cb86549b (patch) | |
tree | ea6814e51bade2355144546f21178f54811a57f2 /ext/fetch/23_response.js | |
parent | 9c7ed1c98b75c3557ac9e269212dcf655f69c0a2 (diff) |
refactor: update runtime code for primordial check for iterators (#13510)
Diffstat (limited to 'ext/fetch/23_response.js')
-rw-r--r-- | ext/fetch/23_response.js | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/ext/fetch/23_response.js b/ext/fetch/23_response.js index 14aadbaf2..4dc56dd8f 100644 --- a/ext/fetch/23_response.js +++ b/ext/fetch/23_response.js @@ -37,6 +37,7 @@ RangeError, RegExp, RegExpPrototypeTest, + SafeArrayIterator, Symbol, SymbolFor, TypeError, @@ -45,7 +46,11 @@ const VCHAR = ["\x21-\x7E"]; const OBS_TEXT = ["\x80-\xFF"]; - const REASON_PHRASE = [...HTTP_TAB_OR_SPACE, ...VCHAR, ...OBS_TEXT]; + const REASON_PHRASE = [ + ...new SafeArrayIterator(HTTP_TAB_OR_SPACE), + ...new SafeArrayIterator(VCHAR), + ...new SafeArrayIterator(OBS_TEXT), + ]; const REASON_PHRASE_MATCHER = regexMatcher(REASON_PHRASE); const REASON_PHRASE_RE = new RegExp(`^[${REASON_PHRASE_MATCHER}]*$`); @@ -90,9 +95,11 @@ * @returns {InnerResponse} */ function cloneInnerResponse(response) { - const urlList = [...response.urlList]; + const urlList = [...new SafeArrayIterator(response.urlList)]; const headerList = [ - ...ArrayPrototypeMap(response.headerList, (x) => [x[0], x[1]]), + ...new SafeArrayIterator( + ArrayPrototypeMap(response.headerList, (x) => [x[0], x[1]]), + ), ]; let body = null; if (response.body !== null) { |