tledger: give clear error that old HW.1 cannot send to bech32 address - electrum - Electrum Bitcoin wallet (HTM) git clone https://git.parazyd.org/electrum (DIR) Log (DIR) Files (DIR) Refs (DIR) Submodules --- (DIR) commit b56fe237cdc604e5b527248acd5fb61e46a8a48c (DIR) parent 87a080d30e0897a5e9ec865a266eba7ee74a87d0 (HTM) Author: SomberNight <somber.night@protonmail.com> Date: Fri, 12 Feb 2021 04:47:53 +0100 ledger: give clear error that old HW.1 cannot send to bech32 address maybe related #7022 Diffstat: M electrum/plugins/ledger/ledger.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) --- (DIR) diff --git a/electrum/plugins/ledger/ledger.py b/electrum/plugins/ledger/ledger.py t@@ -7,7 +7,7 @@ from typing import Optional, Tuple from electrum import ecc from electrum import bip32 from electrum.crypto import hash_160 -from electrum.bitcoin import int_to_hex, var_int, is_segwit_script_type +from electrum.bitcoin import int_to_hex, var_int, is_segwit_script_type, is_b58_address from electrum.bip32 import BIP32Node, convert_bip32_intpath_to_strpath from electrum.i18n import _ from electrum.keystore import Hardware_KeyStore t@@ -415,6 +415,8 @@ class Ledger_KeyStore(Hardware_KeyStore): if len(tx.outputs()) > 2: self.give_error("Transaction with more than 2 outputs not supported") for txout in tx.outputs(): + if client_electrum.is_hw1() and txout.address and not is_b58_address(txout.address): + self.give_error(_("This {} device can only send to base58 addresses.").format(self.device)) if not txout.address: if client_electrum.is_hw1(): self.give_error(_("Only address outputs are supported by {}").format(self.device))