mirror of
https://github.com/monero-project/monero.git
synced 2025-12-21 06:43:12 -08:00
Distinguish "not enough money" and "not enough unlocked money"
Fix #1530
This commit is contained in:
@@ -1147,7 +1147,7 @@ PendingTransaction *WalletImpl::createTransaction(const string &dst_addr, const
|
||||
m_errorString = (boost::format(tr("failed to get random outputs to mix: %s")) % e.what()).str();
|
||||
m_status = Status_Error;
|
||||
|
||||
} catch (const tools::error::not_enough_money& e) {
|
||||
} catch (const tools::error::not_enough_unlocked_money& e) {
|
||||
m_status = Status_Error;
|
||||
std::ostringstream writer;
|
||||
|
||||
@@ -1156,6 +1156,15 @@ PendingTransaction *WalletImpl::createTransaction(const string &dst_addr, const
|
||||
print_money(e.tx_amount());
|
||||
m_errorString = writer.str();
|
||||
|
||||
} catch (const tools::error::not_enough_money& e) {
|
||||
m_status = Status_Error;
|
||||
std::ostringstream writer;
|
||||
|
||||
writer << boost::format(tr("not enough money to transfer, overall balance only %s, sent amount %s")) %
|
||||
print_money(e.available()) %
|
||||
print_money(e.tx_amount());
|
||||
m_errorString = writer.str();
|
||||
|
||||
} catch (const tools::error::tx_not_possible& e) {
|
||||
m_status = Status_Error;
|
||||
std::ostringstream writer;
|
||||
@@ -1241,7 +1250,7 @@ PendingTransaction *WalletImpl::createSweepUnmixableTransaction()
|
||||
m_errorString = tr("failed to get random outputs to mix");
|
||||
m_status = Status_Error;
|
||||
|
||||
} catch (const tools::error::not_enough_money& e) {
|
||||
} catch (const tools::error::not_enough_unlocked_money& e) {
|
||||
m_status = Status_Error;
|
||||
std::ostringstream writer;
|
||||
|
||||
@@ -1250,6 +1259,15 @@ PendingTransaction *WalletImpl::createSweepUnmixableTransaction()
|
||||
print_money(e.tx_amount());
|
||||
m_errorString = writer.str();
|
||||
|
||||
} catch (const tools::error::not_enough_money& e) {
|
||||
m_status = Status_Error;
|
||||
std::ostringstream writer;
|
||||
|
||||
writer << boost::format(tr("not enough money to transfer, overall balance only %s, sent amount %s")) %
|
||||
print_money(e.available()) %
|
||||
print_money(e.tx_amount());
|
||||
m_errorString = writer.str();
|
||||
|
||||
} catch (const tools::error::tx_not_possible& e) {
|
||||
m_status = Status_Error;
|
||||
std::ostringstream writer;
|
||||
|
||||
Reference in New Issue
Block a user