diff --git a/electrum/lnchannel.py b/electrum/lnchannel.py index bb47e955d..b49c890ad 100644 --- a/electrum/lnchannel.py +++ b/electrum/lnchannel.py @@ -756,7 +756,7 @@ class Channel(PrintError): htlcs=htlcs) def get_local_index(self): - return int(self.config[LOCAL].multisig_key.pubkey < self.config[REMOTE].multisig_key.pubkey) + return int(self.config[LOCAL].multisig_key.pubkey > self.config[REMOTE].multisig_key.pubkey) def make_closing_tx(self, local_script: bytes, remote_script: bytes, fee_sat: int) -> Tuple[bytes, int, str]: diff --git a/electrum/lnpeer.py b/electrum/lnpeer.py index 3498a233b..2d7bd415e 100644 --- a/electrum/lnpeer.py +++ b/electrum/lnpeer.py @@ -1155,11 +1155,10 @@ class Peer(PrintError): # TODO: negociate better our_fee = their_fee # index of our_sig - i = bool(chan.get_local_index()) - if not is_local: i = not i + i = chan.get_local_index() # add signatures - closing_tx.add_signature_to_txin(0, int(i), bh2u(der_sig_from_sig_string(our_sig) + b'\x01')) - closing_tx.add_signature_to_txin(0, int(not i), bh2u(der_sig_from_sig_string(their_sig) + b'\x01')) + closing_tx.add_signature_to_txin(0, i, bh2u(der_sig_from_sig_string(our_sig) + b'\x01')) + closing_tx.add_signature_to_txin(0, 1-i, bh2u(der_sig_from_sig_string(their_sig) + b'\x01')) # broadcast await self.network.broadcast_transaction(closing_tx) return closing_tx.txid()