qml: QETxFinalizer: handle txid being None
fixes https://github.com/spesmilo/electrum/issues/10042
This commit is contained in:
@@ -509,5 +509,7 @@ class QETxDetails(QObject, QtEventListener):
|
||||
@pyqtSlot(result='QVariantList')
|
||||
def getSerializedTx(self):
|
||||
txqr = self._tx.to_qr_data()
|
||||
label = self._wallet.wallet.get_label_for_txid(self._tx.txid())
|
||||
label = ""
|
||||
if txid := self._tx.txid():
|
||||
label = self._wallet.wallet.get_label_for_txid(txid)
|
||||
return [str(self._tx), txqr[0], txqr[1], label]
|
||||
|
||||
@@ -495,7 +495,9 @@ class QETxFinalizer(TxFeeSlider):
|
||||
@pyqtSlot(result='QVariantList')
|
||||
def getSerializedTx(self):
|
||||
txqr = self._tx.to_qr_data()
|
||||
label = self._wallet.wallet.get_label_for_txid(self._tx.txid())
|
||||
label = ""
|
||||
if txid := self._tx.txid():
|
||||
label = self._wallet.wallet.get_label_for_txid(txid)
|
||||
return [str(self._tx), txqr[0], txqr[1], label]
|
||||
|
||||
|
||||
|
||||
@@ -256,7 +256,8 @@ class HistoryModel(CustomModel, Logger):
|
||||
|
||||
def update_label(self, index):
|
||||
tx_item = index.internalPointer().get_data()
|
||||
tx_item['label'] = self.window.wallet.get_label_for_txid(get_item_key(tx_item))
|
||||
tx_item['label'] = self.window.wallet.get_label_for_txid(
|
||||
get_item_key(tx_item)) # FIXME get_item_key might return an RHASH, but we call get_label_for_txid?!
|
||||
topLeft = bottomRight = self.createIndex(index.row(), HistoryColumns.DESCRIPTION)
|
||||
self.dataChanged.emit(topLeft, bottomRight, [Qt.ItemDataRole.DisplayRole])
|
||||
self.window.utxo_list.update()
|
||||
|
||||
@@ -1683,7 +1683,8 @@ class Abstract_Wallet(ABC, Logger, EventListener):
|
||||
self._default_labels['group:' + group_id] = label
|
||||
|
||||
def get_label_for_txid(self, tx_hash: str) -> str:
|
||||
return self._labels.get(tx_hash) or self._get_default_label_for_txid(tx_hash)
|
||||
assert tx_hash, f"expected a txid, got {tx_hash!r}"
|
||||
return self._labels.get(tx_hash) or self._get_default_label_for_txid(tx_hash) or ""
|
||||
|
||||
def _get_default_label_for_txid(self, tx_hash: str) -> str:
|
||||
if label := self._default_labels.get(tx_hash):
|
||||
|
||||
Reference in New Issue
Block a user