diff --git a/peer.go b/peer.go index 659ccd2ee..c03111d35 100644 --- a/peer.go +++ b/peer.go @@ -488,10 +488,12 @@ func (p *peer) loadActiveChannels(chans []*channeldb.OpenChannel) error { p.activeChannels[chanID] = lnChan p.activeChanMtx.Unlock() - // Only if the channel is public do we need to collect it for - // sending out a new enable update. + // To ensure we can route through this channel now that the peer + // is back online, we'll attempt to send an update to enable it. + // This will only be used for non-pending public channels, as + // they are the only ones capable of routing. chanIsPublic := dbChan.ChannelFlags&lnwire.FFAnnounceChannel != 0 - if chanIsPublic { + if chanIsPublic && !dbChan.IsPending { activePublicChans = append(activePublicChans, *chanPoint) } }