From d0774a747e7520f6dae3cf90ecbb682395da8c9c Mon Sep 17 00:00:00 2001 From: cyan Date: Wed, 27 Nov 2024 23:28:32 +0000 Subject: [PATCH] catch exception in queryWalletDevice --- src/wallet/api/wallet_manager.cpp | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/wallet/api/wallet_manager.cpp b/src/wallet/api/wallet_manager.cpp index f88bd9e64..c200f52ae 100644 --- a/src/wallet/api/wallet_manager.cpp +++ b/src/wallet/api/wallet_manager.cpp @@ -213,10 +213,14 @@ bool WalletManagerImpl::verifyWalletPassword(const std::string &keys_file_name, bool WalletManagerImpl::queryWalletDevice(Wallet::Device& device_type, const std::string &keys_file_name, const std::string &password, uint64_t kdf_rounds) const { - hw::device::device_type type; - bool r = tools::wallet2::query_device(type, keys_file_name, password, kdf_rounds); - device_type = static_cast(type); - return r; + try { + hw::device::device_type type; + bool r = tools::wallet2::query_device(type, keys_file_name, password, kdf_rounds); + device_type = static_cast(type); + return r; + } catch (...) { + return false; + } } std::vector WalletManagerImpl::findWallets(const std::string &path) -- 2.43.0