diff --git a/lnwallet/btcwallet/btcwallet.go b/lnwallet/btcwallet/btcwallet.go index d98e08ef..9c737fb2 100644 --- a/lnwallet/btcwallet/btcwallet.go +++ b/lnwallet/btcwallet/btcwallet.go @@ -875,9 +875,19 @@ func (b *BtcWallet) IsSynced() (bool, int64, error) { return false, 0, err } + // Make sure the backing chain has been considered synced first. + if !b.wallet.ChainSynced() { + bestHeader, err := b.cfg.ChainSource.GetBlockHeader(bestHash) + if err != nil { + return false, 0, err + } + bestTimestamp = bestHeader.Timestamp.Unix() + return false, bestTimestamp, nil + } + // If the wallet hasn't yet fully synced to the node's best chain tip, // then we're not yet fully synced. - if syncState.Height < bestHeight || !b.wallet.ChainSynced() { + if syncState.Height < bestHeight { return false, bestTimestamp, nil }