htlcswitch: fix mockInvoiceRegistry implementation of SettleInvoice

In this commit we fix the implementation of SettleInvoice by ensuring
the lock is held for the duration of the method.
This commit is contained in:
Olaoluwa Osuntokun 2017-11-11 15:05:52 -08:00
parent a702aace9c
commit 849abde253
No known key found for this signature in database
GPG Key ID: 964EA263DD637C21

@ -419,15 +419,15 @@ func (i *mockInvoiceRegistry) LookupInvoice(rHash chainhash.Hash) (*channeldb.In
}
func (i *mockInvoiceRegistry) SettleInvoice(rhash chainhash.Hash) error {
i.Lock()
defer i.Unlock()
invoice, err := i.LookupInvoice(rhash)
if err != nil {
return err
invoice, ok := i.invoices[rhash]
if !ok {
return errors.New("can't find mock invoice")
}
i.Lock()
invoice.Terms.Settled = true
i.Unlock()
return nil
}