wallet2: fix exception on split txes
This commit is contained in:
parent
5c5b0fd048
commit
d5a9edf27a
@ -4353,7 +4353,8 @@ std::vector<wallet2::pending_tx> wallet2::create_transactions_2(std::vector<cryp
|
|||||||
}
|
}
|
||||||
else
|
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())
|
if (original_output_index == dsts.size())
|
||||||
dsts.push_back(tx_destination_entry(0,addr));
|
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");
|
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");
|
LOG_PRINT_L2("We have more to pay, starting another tx");
|
||||||
txes.push_back(TX());
|
txes.push_back(TX());
|
||||||
|
original_output_index = 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user