From: Chris Duncan Date: Tue, 30 Jun 2026 22:10:47 +0000 (-0700) Subject: Fix decimal padding args. X-Git-Url: https://git.codecow.com/?a=commitdiff_plain;h=656be73b333322623144f5ff09254e64408bc3e4;p=libnemo.git Fix decimal padding args. --- diff --git a/src/lib/convert/dec.ts b/src/lib/convert/dec.ts index 575a929..5f8f4fe 100644 --- a/src/lib/convert/dec.ts +++ b/src/lib/convert/dec.ts @@ -3,17 +3,18 @@ export const dec = Object.freeze({ /** - * Convert a decimal integer to a Uint8Array of bytes. Fractional part is truncated. + * Convert a decimal integer to a Uint8Array of bytes. Fractional part is + * truncated. * * @param {bigint|number|string} decimal - Integer to convert - * @param {number} [padding=0] - Minimum length of the resulting array padded as necessary with starting 0x00 bytes + * @param {number} [padding=1] - Minimum length of the resulting array padded as necessary with starting 0x00 bytes * @returns {Uint8Array} Byte array representation of the input decimal */ - toBytes (decimal: bigint | number | string, padding: number = 0): Uint8Array { + toBytes (decimal: bigint | number | string, padding: number = 1): Uint8Array { if (decimal == null) { throw new TypeError(`Failed to convert '${decimal}' from decimal to bytes`) } - if (typeof padding !== 'number') { + if (typeof padding !== 'number' || padding < 1 || padding > 0xffffffff) { throw new TypeError('Invalid padding') } let integer = BigInt(decimal) @@ -32,14 +33,14 @@ export const dec = Object.freeze({ * Convert a decimal integer to a hexadecimal string. * * @param {(bigint|number|string)} decimal - Integer to convert - * @param {number} [padding=0] - Minimum length of the resulting string padded as necessary with starting zeroes + * @param {number} [padding=1] - Minimum length of the resulting string padded as necessary with starting zeroes * @returns {string} Hexadecimal string representation of the input decimal */ - toHex (decimal: bigint | number | string, padding: number = 0): string { + toHex (decimal: bigint | number | string, padding: number = 1): string { if (decimal == null) { throw new TypeError(`Failed to convert '${decimal}' from decimal to hex`) } - if (typeof padding !== 'number') { + if (typeof padding !== 'number' || padding < 1 || padding > 0x1fffffffe) { throw new TypeError('Invalid padding') } try {