]> git.codecow.com Git - libnemo.git/commitdiff
Avoid trying to transfer buffers if unsupported.
authorChris Duncan <chris@zoso.dev>
Fri, 8 Aug 2025 18:43:33 +0000 (11:43 -0700)
committerChris Duncan <chris@zoso.dev>
Fri, 8 Aug 2025 18:43:33 +0000 (11:43 -0700)
src/lib/convert.ts
src/lib/safe.ts
src/lib/wallet.ts

index 38dd256dd1c0ea7faab148698882460e7e92b9a5..5b20a0590609b2bb88a2ac1e0ce261c3641b687e 100644 (file)
@@ -71,8 +71,7 @@ export class bytes {
                        bytes = new Uint8Array(bytes)\r
                }\r
                if (bytes.buffer.detached) return\r
-               bytes.fill(0)\r
-               bytes.buffer.transfer()\r
+               bytes.fill(0).buffer.transfer?.()\r
        }\r
 \r
        /**\r
index 147a50f3105b849aa99e545fb3464dc84cb06fe4..80290d777b914cdccf8788d9f4a49cc9e0142934 100644 (file)
@@ -305,7 +305,7 @@ export class Safe {
 
        static async #createAesKey (purpose: 'encrypt' | 'decrypt', password: ArrayBuffer, keySalt: ArrayBuffer): Promise<CryptoKey> {
                const derivationKey = await crypto.subtle.importKey('raw', password, 'PBKDF2', false, ['deriveBits', 'deriveKey'])
-               new Uint8Array(password).fill(0).buffer.transfer()
+               new Uint8Array(password).fill(0).buffer.transfer?.()
                const derivationAlgorithm: Pbkdf2Params = {
                        name: 'PBKDF2',
                        hash: 'SHA-512',
index 78648ffbc2e9837b6b65880b7d6189b5a93aa3a2..79d9474071eeb0753523c1a11eebd2e7a6450bce 100644 (file)
@@ -177,7 +177,7 @@ export class Wallet {
                        const b = new Uint8Array(this.#mnemonic)\r
                        this.#mnemonic = undefined\r
                        const m = bytes.toUtf8(b)\r
-                       b.fill(0).buffer.transfer()\r
+                       b.fill(0).buffer.transfer?.()\r
                        return m\r
                } catch {\r
                        this.#mnemonic = undefined\r
@@ -191,7 +191,7 @@ export class Wallet {
                        const b = new Uint8Array(this.#seed)\r
                        this.#seed = undefined\r
                        const s = bytes.toHex(b)\r
-                       b.fill(0).buffer.transfer()\r
+                       b.fill(0).buffer.transfer?.()\r
                        return s\r
                } catch {\r
                        this.#seed = undefined\r