diff options
author | moneromooo-monero <moneromooo-monero@users.noreply.github.com> | 2017-09-20 10:35:15 +0100 |
---|---|---|
committer | moneromooo-monero <moneromooo-monero@users.noreply.github.com> | 2017-09-20 10:35:15 +0100 |
commit | d5a9edf27ad1f69a51bb20c9cf6f7fca713454b2 (patch) | |
tree | 24f636691e6686196b947b9af4616aff9af0c754 /src/wallet/wallet2.cpp | |
parent | wallet2: print unused indices on a single line (diff) | |
download | monero-d5a9edf27ad1f69a51bb20c9cf6f7fca713454b2.tar.xz |
wallet2: fix exception on split txes
Diffstat (limited to '')
-rw-r--r-- | src/wallet/wallet2.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/wallet/wallet2.cpp b/src/wallet/wallet2.cpp index c5254f388..d55e9b044 100644 --- a/src/wallet/wallet2.cpp +++ b/src/wallet/wallet2.cpp @@ -4353,7 +4353,8 @@ std::vector<wallet2::pending_tx> wallet2::create_transactions_2(std::vector<cryp } else { - THROW_WALLET_EXCEPTION_IF(original_output_index > dsts.size(), error::wallet_internal_error, "original_output_index too large"); + THROW_WALLET_EXCEPTION_IF(original_output_index > dsts.size(), error::wallet_internal_error, + std::string("original_output_index too large: ") + std::to_string(original_output_index) + " > " + std::to_string(dsts.size())); if (original_output_index == dsts.size()) dsts.push_back(tx_destination_entry(0,addr)); THROW_WALLET_EXCEPTION_IF(memcmp(&dsts[original_output_index].addr, &addr, sizeof(addr)), error::wallet_internal_error, "Mismatched destination address"); @@ -4627,6 +4628,7 @@ std::vector<wallet2::pending_tx> wallet2::create_transactions_2(std::vector<cryp { LOG_PRINT_L2("We have more to pay, starting another tx"); txes.push_back(TX()); + original_output_index = 0; } } } |