From c5b87ba163d37f90dccc36e69785b91697b9b64d Mon Sep 17 00:00:00 2001 From: Sean Bowe Date: Wed, 2 Mar 2022 11:05:04 -0700 Subject: [PATCH] wallet: rather than assert, error in case of inconsistency between FVK and address --- src/wallet/wallet.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/wallet/wallet.cpp b/src/wallet/wallet.cpp index 8457de96c..dea81bdf2 100644 --- a/src/wallet/wallet.cpp +++ b/src/wallet/wallet.cpp @@ -902,7 +902,12 @@ bool CWallet::LoadUnifiedCaches() // an orchard receiver present in this address. auto orchardFvk = ufvk.value().GetOrchardKey(); auto orchardReceiver = addr.first.GetOrchardReceiver(); - assert (orchardFvk.has_value() == orchardReceiver.has_value()); + + if (orchardFvk.has_value() != orchardReceiver.has_value()) { + // Inconsistency between full viewing key and address + // metadata. + return false; + } if (orchardFvk.has_value()) { if (!AddOrchardRawAddress(orchardFvk.value().ToIncomingViewingKey(), orchardReceiver.value())) {