From 3592b0b847d0c4348fc37be868ac22607ce426de Mon Sep 17 00:00:00 2001 From: Richard Viney Date: Sun, 23 Jun 2024 16:59:06 +1200 Subject: Improve Base64 decode performance --- src/gleam_stdlib.mjs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'src/gleam_stdlib.mjs') diff --git a/src/gleam_stdlib.mjs b/src/gleam_stdlib.mjs index c4111f9..d067cec 100644 --- a/src/gleam_stdlib.mjs +++ b/src/gleam_stdlib.mjs @@ -551,7 +551,11 @@ export function encode64(bit_array, padding) { export function decode64(sBase64) { try { const binString = atob(sBase64); - const array = Uint8Array.from(binString, (c) => c.charCodeAt(0)); + const length = binString.length; + const array = new Uint8Array(length); + for (let i = 0; i < length; i++) { + array[i] = binString.charCodeAt(i); + } return new Ok(new BitArray(array)); } catch { return new Error(Nil); -- cgit v1.2.3