diff --git a/electrum/lnchannel.py b/electrum/lnchannel.py index 9930d74a8..32115a065 100644 --- a/electrum/lnchannel.py +++ b/electrum/lnchannel.py @@ -1095,6 +1095,9 @@ class Channel(AbstractChannel): sender = subject receiver = subject.inverted() initiator = LOCAL if self.constraints.is_initiator else REMOTE # the initiator/funder pays on-chain fees + is_frozen = self.is_frozen_for_sending() if subject == LOCAL else self.is_frozen_for_receiving() + if not self.is_active() or is_frozen: + return 0 def consider_ctx(*, ctx_owner: HTLCOwner, is_htlc_dust: bool) -> int: ctn = self.get_next_ctn(ctx_owner) @@ -1488,4 +1491,3 @@ class Channel(AbstractChannel): self.logger.info('funding outpoint mismatch') return False return True - diff --git a/electrum/lnworker.py b/electrum/lnworker.py index 413303d8c..cfa858c54 100644 --- a/electrum/lnworker.py +++ b/electrum/lnworker.py @@ -1419,8 +1419,7 @@ class LNWallet(LNWorker): with self.lock: if self.channels: for c in self.channels.values(): - if c.is_active() and not c.is_frozen_for_sending(): - send_values.append(Decimal(c.available_to_spend(LOCAL)) / 1000) + send_values.append(Decimal(c.available_to_spend(LOCAL)) / 1000) return max(send_values) def num_sats_can_receive(self) -> Decimal: @@ -1428,8 +1427,7 @@ class LNWallet(LNWorker): with self.lock: if self.channels: for c in self.channels.values(): - if c.is_active() and not c.is_frozen_for_receiving(): - receive_values.append(Decimal(c.available_to_spend(REMOTE)) / 1000) + receive_values.append(Decimal(c.available_to_spend(REMOTE)) / 1000) return max(receive_values) def can_pay_invoice(self, invoice: LNInvoice) -> bool: