From f4e0e2111fac3fd8a1f7f73e8a45a92a19a13db3 Mon Sep 17 00:00:00 2001 From: Jaco Date: Wed, 23 Aug 2023 12:01:59 +0300 Subject: [PATCH] Extend u8aToBuffer check with hasBuffer (#1871) * Extend u8aToBuffer check with hasBuffer * CHANGELOG * Always return Uint8Array * New instance of fallback --- CHANGELOG.md | 1 + packages/util/src/u8a/toBuffer.ts | 6 +++++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 189172b713..b50688bcdc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,7 @@ Changes: - Fix `u8aTo{BigInt, Bn, Number}` for non-negative `i{8, 16, 32...}` inputs +- Extend `u8aToBuffer` with `hasBuffer` check ## 12.4.1 Aug 17, 2023 diff --git a/packages/util/src/u8a/toBuffer.ts b/packages/util/src/u8a/toBuffer.ts index 0aff1b8ea8..7a9eacc2e7 100644 --- a/packages/util/src/u8a/toBuffer.ts +++ b/packages/util/src/u8a/toBuffer.ts @@ -5,6 +5,8 @@ import type { BufferClass, BufferObject } from '../types.js'; import { xglobal } from '@polkadot/x-global'; +import { hasBuffer } from '../has.js'; + /** * @name u8aToBuffer * @summary Creates a Buffer object from a hex string. @@ -20,5 +22,7 @@ import { xglobal } from '@polkadot/x-global'; * ``` */ export function u8aToBuffer (value?: Uint8Array | null): T { - return (xglobal.Buffer as unknown as BufferClass).from(value || []); + return hasBuffer + ? (xglobal.Buffer as unknown as BufferClass).from(value || []) + : new Uint8Array(value || []) as T; }