funding: check error to avoid panic during test

This commit, the error returned from `getInitialFwdingPolicy` is checked
in order to avoid a nil pointer dereference panic during the
TestFundingManagerCustomChannelParameters test.
This commit is contained in:
Elle Mouton 2022-12-22 10:02:14 +02:00
parent de3e0d7875
commit d4a49b08f5
No known key found for this signature in database
GPG Key ID: D7D916376026F177
3 changed files with 14 additions and 12 deletions

View File

@ -182,6 +182,9 @@ certain large transactions](https://github.com/lightningnetwork/lnd/pull/7100).
* [Updated several tlv stream-decoding callsites to use tlv/v1.1.0 P2P variants
for untrusted input.](https://github.com/lightningnetwork/lnd/pull/7227)
* [Prevent nil pointer dereference during funding manager
test](https://github.com/lightningnetwork/lnd/pull/7268)
## `lncli`
* [Add an `insecure` flag to skip tls auth as well as a `metadata` string slice

View File

@ -4439,10 +4439,7 @@ func (f *Manager) getInitialFwdingPolicy(permChanID lnwire.ChannelID) (
chanID := make([]byte, 32)
copy(chanID, permChanID[:])
value, err := f.cfg.Wallet.Cfg.Database.GetInitialFwdingPolicy(
chanID,
)
value, err := f.cfg.Wallet.Cfg.Database.GetInitialFwdingPolicy(chanID)
if err != nil {
return nil, err
}

View File

@ -3082,15 +3082,17 @@ func TestFundingManagerCustomChannelParameters(t *testing.T) {
// After the funding is sigend and before the channel announcement
// we expect Alice and Bob to store their respective fees in the database.
forwardingPolicy, _ := alice.fundingMgr.getInitialFwdingPolicy(fundingSigned.ChanID)
if err := assertFees(forwardingPolicy, 42, 1337); err != nil {
t.Fatal(err)
}
forwardingPolicy, err := alice.fundingMgr.getInitialFwdingPolicy(
fundingSigned.ChanID,
)
require.NoError(t, err)
require.NoError(t, assertFees(forwardingPolicy, 42, 1337))
forwardingPolicy, _ = bob.fundingMgr.getInitialFwdingPolicy(fundingSigned.ChanID)
if err := assertFees(forwardingPolicy, 100, 1000); err != nil {
t.Fatal(err)
}
forwardingPolicy, err = bob.fundingMgr.getInitialFwdingPolicy(
fundingSigned.ChanID,
)
require.NoError(t, err)
require.NoError(t, assertFees(forwardingPolicy, 100, 1000))
// Wait for Alice to published the funding tx to the network.
var fundingTx *wire.MsgTx