From e614750345f92f695a139a8341a601a58bff68e2 Mon Sep 17 00:00:00 2001 From: arjunyel Date: Wed, 14 Feb 2024 16:29:10 -0600 Subject: [PATCH] [javascript] Update timingSafeEqual --- javascript/src/timing_safe_equal.ts | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/javascript/src/timing_safe_equal.ts b/javascript/src/timing_safe_equal.ts index df3650f7a..b65d315d1 100644 --- a/javascript/src/timing_safe_equal.ts +++ b/javascript/src/timing_safe_equal.ts @@ -1,4 +1,4 @@ -// Copyright 2018-2022 the Deno authors. All rights reserved. MIT license. +// Copyright 2018-2024 the Deno authors. All rights reserved. MIT license. // https://github.com/denoland/deno_std/blob/main/crypto/timing_safe_equal.ts /** Make an assertion, if not `true`, then throw. */ @@ -18,10 +18,14 @@ export function timingSafeEqual( return false; } if (!(a instanceof DataView)) { - a = new DataView(ArrayBuffer.isView(a) ? a.buffer : a); + a = ArrayBuffer.isView(a) + ? new DataView(a.buffer, a.byteOffset, a.byteLength) + : new DataView(a); } if (!(b instanceof DataView)) { - b = new DataView(ArrayBuffer.isView(b) ? b.buffer : b); + b = ArrayBuffer.isView(b) + ? new DataView(b.buffer, b.byteOffset, b.byteLength) + : new DataView(b); } assert(a instanceof DataView); assert(b instanceof DataView);