Merge pull request #2424
28b72b6etx_pool: pre-init tvc.m_verifivation_failed before processing (moneromooo-monero)50a629b2core_tests: catch (impossible in practice) tx extra api failure (moneromooo-monero)fee15ef1wallet2: catch failure to parse address (moneromooo-monero)1399e26dnet_peerlist: remove dead code (moneromooo-monero)50e09698tx_pool: guard against failure getting tx hash (moneromooo-monero)54cc209awallet_rpc_server: catch failure to create directory (moneromooo-monero)3e55099cwallet_rpc_server: init m_vm to NULL in ctor (moneromooo-monero)7d0dde5ewallet_args: remove redundant default value for --log-file (moneromooo-monero)ed4a3350wallet2: catch failure to save keys file (moneromooo-monero)44434c8awallet2_api: check whether dynamic_cast returns NULL (moneromooo-monero)92f2f687core: check return value from parse_hexstr_to_binbuff (moneromooo-monero)5475692ewallet2_api: remove an unused, uninitialized, field (moneromooo-monero)a7ba3de1libwallet_api_tests: initialize newblock_triggered on reset (moneromooo-monero)b2763acewallet2_api: init error code to "no error" in the ctor (moneromooo-monero)b5faac53get_blockchain_top now returns void (moneromooo-monero)2e44d8f2wallet_rpc_server: guard against exceptions (moneromooo-monero)4230876bsimplewallet: guard against I/O exceptions (moneromooo-monero)06c1e057daemon: initialize decode_as_json in RPC request (moneromooo-monero)11f71af5http_base: init size_t in http_request_info ctor (moneromooo-monero)
This commit is contained in:
@@ -1708,9 +1708,18 @@ bool simple_wallet::open_wallet(const boost::program_options::variables_map& vm)
|
||||
catch (const std::exception& e)
|
||||
{
|
||||
fail_msg_writer() << tr("failed to load wallet: ") << e.what();
|
||||
// only suggest removing cache if the password was actually correct
|
||||
if (m_wallet && m_wallet->verify_password(password))
|
||||
fail_msg_writer() << boost::format(tr("You may want to remove the file \"%s\" and try again")) % m_wallet_file;
|
||||
if (m_wallet)
|
||||
{
|
||||
// only suggest removing cache if the password was actually correct
|
||||
bool password_is_correct = false;
|
||||
try
|
||||
{
|
||||
password_is_correct = m_wallet->verify_password(password);
|
||||
}
|
||||
catch (...) { } // guard against I/O errors
|
||||
if (password_is_correct)
|
||||
fail_msg_writer() << boost::format(tr("You may want to remove the file \"%s\" and try again")) % m_wallet_file;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
success_msg_writer() <<
|
||||
|
||||
Reference in New Issue
Block a user