wallet2: fix show_transfers missing multiple incoming outputs

This commit is contained in:
moneromooo-monero 2017-10-23 14:38:07 +01:00
parent 8d511f3c24
commit 626e80780b
No known key found for this signature in database
GPG Key ID: 686F07454D6CEFC3

View File

@ -788,7 +788,7 @@ void wallet2::scan_output(const cryptonote::account_keys &keys, const cryptonote
{ {
tx_scan_info.money_transfered = tools::decodeRct(tx.rct_signatures, tx_scan_info.received->derivation, i, tx_scan_info.mask); tx_scan_info.money_transfered = tools::decodeRct(tx.rct_signatures, tx_scan_info.received->derivation, i, tx_scan_info.mask);
} }
tx_money_got_in_outs[tx_scan_info.received->index] = tx_scan_info.money_transfered; tx_money_got_in_outs[tx_scan_info.received->index] += tx_scan_info.money_transfered;
tx_scan_info.amount = tx_scan_info.money_transfered; tx_scan_info.amount = tx_scan_info.money_transfered;
++num_vouts_received; ++num_vouts_received;
} }
@ -1520,7 +1520,7 @@ void wallet2::pull_next_blocks(uint64_t start_height, uint64_t &blocks_start_hei
void wallet2::remove_obsolete_pool_txs(const std::vector<crypto::hash> &tx_hashes) void wallet2::remove_obsolete_pool_txs(const std::vector<crypto::hash> &tx_hashes)
{ {
// remove pool txes to us that aren't in the pool anymore // remove pool txes to us that aren't in the pool anymore
std::unordered_map<crypto::hash, wallet2::payment_details>::iterator uit = m_unconfirmed_payments.begin(); std::unordered_multimap<crypto::hash, wallet2::payment_details>::iterator uit = m_unconfirmed_payments.begin();
while (uit != m_unconfirmed_payments.end()) while (uit != m_unconfirmed_payments.end())
{ {
const crypto::hash &txid = uit->second.m_tx_hash; const crypto::hash &txid = uit->second.m_tx_hash;