add empty container sanity checks when using front() and back()

This commit is contained in:
moneromooo-monero 2017-12-11 22:36:58 +00:00
parent 56fa6ce15f
commit 45a1c4c088
No known key found for this signature in database
GPG key ID: 686F07454D6CEFC3
9 changed files with 32 additions and 6 deletions

View file

@ -4950,6 +4950,7 @@ bool wallet2::tx_add_fake_output(std::vector<std::vector<tools::wallet2::get_out
if (global_index == real_index) // don't re-add real one
return false;
auto item = std::make_tuple(global_index, tx_public_key, mask);
CHECK_AND_ASSERT_MES(!outs.empty(), false, "internal error: outs is empty");
if (std::find(outs.back().begin(), outs.back().end(), item) != outs.back().end()) // don't add duplicates
return false;
outs.back().push_back(item);