URI: 
       tlnworker: set invoice status if htlcs are received from previous session - electrum - Electrum Bitcoin wallet
  HTML git clone https://git.parazyd.org/electrum
   DIR Log
   DIR Files
   DIR Refs
   DIR Submodules
       ---
   DIR commit 7f3542f0801239cfe5e81feac6b54ad90213c289
   DIR parent bf4a9d7909ac98332fbec93e256032b1fad8e3c3
  HTML Author: ThomasV <thomasv@electrum.org>
       Date:   Thu,  5 Mar 2020 10:51:22 +0100
       
       lnworker: set invoice status if htlcs are received from previous session
       
       Diffstat:
         M electrum/lnworker.py                |      14 ++++++++++----
       
       1 file changed, 10 insertions(+), 4 deletions(-)
       ---
   DIR diff --git a/electrum/lnworker.py b/electrum/lnworker.py
       t@@ -1201,16 +1201,22 @@ class LNWallet(LNWorker):
        
            def payment_failed(self, chan, payment_hash: bytes, reason):
                self.set_payment_status(payment_hash, PR_UNPAID)
       -        f = self.pending_payments[payment_hash]
       -        if not f.cancelled():
       +        f = self.pending_payments.get(payment_hash)
       +        if f and not f.cancelled():
                    f.set_result((False, None, reason))
       +        else:
       +            self.logger.info('received unexpected payment_failed, probably from previous session')
       +            self.network.trigger_callback('invoice_status', payment_hash.hex())
        
            def payment_sent(self, chan, payment_hash: bytes):
                self.set_payment_status(payment_hash, PR_PAID)
                preimage = self.get_preimage(payment_hash)
       -        f = self.pending_payments[payment_hash]
       -        if not f.cancelled():
       +        f = self.pending_payments.get(payment_hash)
       +        if f and not f.cancelled():
                    f.set_result((True, preimage, None))
       +        else:
       +            self.logger.info('received unexpected payment_sent, probably from previous session')
       +            self.network.trigger_callback('invoice_status', payment_hash.hex())
                self.network.trigger_callback('ln_payment_completed', payment_hash, chan.channel_id)
        
            def payment_received(self, chan, payment_hash: bytes):