From e38605c10a316d225e5140cf2c9aa8c16e8ac94f Mon Sep 17 00:00:00 2001 From: SomberNight Date: Wed, 9 Aug 2023 14:36:36 +0000 Subject: [PATCH] CLI: fix regression re handling "unknown command", re payment_identifiers ``` $ ./run_electrum sadasdasddsa Traceback (most recent call last): File "/home/user/wspace/electrum/./run_electrum", line 532, in main() File "/home/user/wspace/electrum/./run_electrum", line 398, in main if uri and not PaymentIdentifier(None, uri).is_valid(): File "/home/user/wspace/electrum/electrum/payment_identifier.py", line 136, in __init__ self.parse(text) File "/home/user/wspace/electrum/electrum/payment_identifier.py", line 265, in parse elif contact := self.contacts.by_name(text): AttributeError: 'NoneType' object has no attribute 'by_name' ``` --- electrum/payment_identifier.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/electrum/payment_identifier.py b/electrum/payment_identifier.py index 05aa3c3b3..556f2da69 100644 --- a/electrum/payment_identifier.py +++ b/electrum/payment_identifier.py @@ -104,7 +104,7 @@ class PaymentIdentifier(Logger): * lightning address """ - def __init__(self, wallet: 'Abstract_Wallet', text: str): + def __init__(self, wallet: Optional['Abstract_Wallet'], text: str): Logger.__init__(self) self._state = PaymentIdentifierState.EMPTY self.wallet = wallet @@ -262,7 +262,7 @@ class PaymentIdentifier(Logger): self._type = PaymentIdentifierType.SPK self.spk = scriptpubkey self.set_state(PaymentIdentifierState.AVAILABLE) - elif contact := self.contacts.by_name(text): + elif self.contacts and (contact := self.contacts.by_name(text)): if contact['type'] == 'address': self._type = PaymentIdentifierType.BIP21 self.bip21 = {