From 68a29953033ef0c1d05c2a65d8c0026c4d375fb8 Mon Sep 17 00:00:00 2001 From: Benjamin Himes Date: Tue, 18 Feb 2025 22:58:34 +0200 Subject: [PATCH] bt-decode handles options now --- async_substrate_interface/async_substrate.py | 13 +++++-------- async_substrate_interface/sync_substrate.py | 12 ++++-------- 2 files changed, 9 insertions(+), 16 deletions(-) diff --git a/async_substrate_interface/async_substrate.py b/async_substrate_interface/async_substrate.py index 0037bc6..7713e00 100644 --- a/async_substrate_interface/async_substrate.py +++ b/async_substrate_interface/async_substrate.py @@ -892,15 +892,12 @@ async def decode_scale( Returns: Decoded object """ - if scale_bytes == b"\x00": - obj = None + if type_string == "scale_info::0": # Is an AccountId + # Decode AccountId bytes to SS58 address + return ss58_encode(scale_bytes, SS58_FORMAT) else: - if type_string == "scale_info::0": # Is an AccountId - # Decode AccountId bytes to SS58 address - return ss58_encode(scale_bytes, SS58_FORMAT) - else: - await self._wait_for_registry(_attempt, _retries) - obj = decode_by_type_string(type_string, self.registry, scale_bytes) + await self._wait_for_registry(_attempt, _retries) + obj = decode_by_type_string(type_string, self.registry, scale_bytes) if return_scale_obj: return ScaleObj(obj) else: diff --git a/async_substrate_interface/sync_substrate.py b/async_substrate_interface/sync_substrate.py index f2756bc..d489ff8 100644 --- a/async_substrate_interface/sync_substrate.py +++ b/async_substrate_interface/sync_substrate.py @@ -652,15 +652,11 @@ def decode_scale( Returns: Decoded object """ - - if scale_bytes == b"\x00": - obj = None + if type_string == "scale_info::0": # Is an AccountId + # Decode AccountId bytes to SS58 address + return ss58_encode(scale_bytes, SS58_FORMAT) else: - if type_string == "scale_info::0": # Is an AccountId - # Decode AccountId bytes to SS58 address - return ss58_encode(scale_bytes, SS58_FORMAT) - else: - obj = decode_by_type_string(type_string, self.registry, scale_bytes) + obj = decode_by_type_string(type_string, self.registry, scale_bytes) if return_scale_obj: return ScaleObj(obj) else: