From b5bc9c8fbe6b11f259c47695d2417f73c1a33b92 Mon Sep 17 00:00:00 2001 From: Elle Mouton Date: Fri, 20 Jun 2025 09:04:54 +0200 Subject: [PATCH] graph/db: check for nil policies In the graph/db code, we should always expect to deal with potentially nil ChannelEdgePolicy pointers and so we should always do a nil check before making use of the struct. --- graph/db/graph.go | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/graph/db/graph.go b/graph/db/graph.go index 7150107a2..692406096 100644 --- a/graph/db/graph.go +++ b/graph/db/graph.go @@ -351,10 +351,16 @@ func (c *ChannelGraph) MarkEdgeLive(chanID uint64) error { info := infos[0] + var policy1, policy2 *models.CachedEdgePolicy + if info.Policy1 != nil { + policy1 = models.NewCachedPolicy(info.Policy1) + } + if info.Policy2 != nil { + policy2 = models.NewCachedPolicy(info.Policy2) + } + c.graphCache.AddChannel( - models.NewCachedEdge(info.Info), - models.NewCachedPolicy(info.Policy1), - models.NewCachedPolicy(info.Policy2), + models.NewCachedEdge(info.Info), policy1, policy2, ) }