aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRiccardo Spagni <ric@spagni.net>2019-03-21 14:51:30 +0200
committerRiccardo Spagni <ric@spagni.net>2019-03-21 14:51:30 +0200
commitdcfd5a88927f6a4a59c5fb5f7ebec9484cdf32e0 (patch)
treec1e5efe5bb3ff2dc1bcf8e67374bbb0e8a71d740
parentMerge pull request #5263 (diff)
parentwallet: fix load failure if the mms isn't usable (diff)
downloadmonero-dcfd5a88927f6a4a59c5fb5f7ebec9484cdf32e0.tar.xz
Merge pull request #5266
576116d4 wallet: fix load failure if the mms isn't usable (moneromooo-monero)
-rw-r--r--src/simplewallet/simplewallet.cpp10
-rw-r--r--src/wallet/wallet2.cpp9
2 files changed, 18 insertions, 1 deletions
diff --git a/src/simplewallet/simplewallet.cpp b/src/simplewallet/simplewallet.cpp
index 07900858e..f390b7675 100644
--- a/src/simplewallet/simplewallet.cpp
+++ b/src/simplewallet/simplewallet.cpp
@@ -10009,6 +10009,16 @@ bool simple_wallet::mms(const std::vector<std::string> &args)
{
try
{
+ m_wallet->get_multisig_wallet_state();
+ }
+ catch(const std::exception &e)
+ {
+ fail_msg_writer() << tr("MMS not available in this wallet");
+ return true;
+ }
+
+ try
+ {
mms::message_store& ms = m_wallet->get_message_store();
if (args.size() == 0)
{
diff --git a/src/wallet/wallet2.cpp b/src/wallet/wallet2.cpp
index 5e862df06..6036154ac 100644
--- a/src/wallet/wallet2.cpp
+++ b/src/wallet/wallet2.cpp
@@ -5120,7 +5120,14 @@ void wallet2::load(const std::string& wallet_, const epee::wipeable_string& pass
MERROR("Failed to save rings, will try again next time");
}
- m_message_store.read_from_file(get_multisig_wallet_state(), m_mms_file);
+ try
+ {
+ m_message_store.read_from_file(get_multisig_wallet_state(), m_mms_file);
+ }
+ catch (const std::exception &e)
+ {
+ MERROR("Failed to initialize MMS, it will be unusable");
+ }
}
//----------------------------------------------------------------------------------------------------
void wallet2::trim_hashchain()