From 9fd21ca277cb54ef2657426f2dd1cda0d199935d Mon Sep 17 00:00:00 2001 From: Chris Duncan Date: Fri, 6 Mar 2026 23:44:58 -0800 Subject: [PATCH] Reaquire WASM memory buffer before reading results, and investigate why memory is growing in the first place. --- index.ts | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/index.ts b/index.ts index 25e2f56..d571e7e 100644 --- a/index.ts +++ b/index.ts @@ -83,6 +83,7 @@ const NanoNaCl = async (bytes: number[]): Promise => { exports.derive() const outPtr = exports.getOutputPointer() const pk = new Uint8Array(32) + buffer = new DataView(memory.buffer) for (let i = 0; i < 32; i++) { pk[i] = buffer.getUint8(outPtr + i) } @@ -104,6 +105,7 @@ const NanoNaCl = async (bytes: number[]): Promise => { exports.sign() const outPtr = exports.getOutputPointer() const s = new Uint8Array(64) + buffer = new DataView(memory.buffer) for (let i = 0; i < 64; i++) { s[i] = buffer.getUint8(outPtr + i) } @@ -112,7 +114,7 @@ const NanoNaCl = async (bytes: number[]): Promise => { } verify = function (s: Uint8Array, h: Uint8Array, k: Uint8Array): Uint8Array { - // assembly/nano-nacl/verify() => bool + // assembly/nano-nacl/verify() => void let buffer: DataView | undefined = new DataView(memory.buffer) let inPtr = exports.getInputPointer() for (let i = 0; i < 64; i++) { @@ -129,6 +131,7 @@ const NanoNaCl = async (bytes: number[]): Promise => { exports.verify() const outPtr = exports.getOutputPointer() const v = new Uint8Array(1) + buffer = new DataView(memory.buffer) v[0] = buffer.getUint8(outPtr) buffer = undefined return v -- 2.47.3