Merge pull request #1842

223fe5bb wallet: fix get_tranfers with multiple incoming txes with same pid (moneromooo-monero)
This commit is contained in:
Riccardo Spagni 2017-03-05 17:52:42 +02:00
commit 8cb58dbb69
No known key found for this signature in database
GPG Key ID: 55432DF31CCD4FCD

View File

@ -456,7 +456,14 @@ namespace tools
a & m_tx_notes; a & m_tx_notes;
if(ver < 13) if(ver < 13)
return; return;
a & m_unconfirmed_payments; if (ver < 17)
{
// we're loading an old version, where m_unconfirmed_payments was a std::map
std::unordered_map<crypto::hash, payment_details> m;
a & m;
for (std::unordered_map<crypto::hash, payment_details>::const_iterator i = m.begin(); i != m.end(); ++i)
m_unconfirmed_payments.insert(*i);
}
if(ver < 14) if(ver < 14)
return; return;
if(ver < 15) if(ver < 15)
@ -475,6 +482,9 @@ namespace tools
if(ver < 16) if(ver < 16)
return; return;
a & m_address_book; a & m_address_book;
if(ver < 17)
return;
a & m_unconfirmed_payments;
} }
/*! /*!
@ -633,7 +643,7 @@ namespace tools
std::atomic<uint64_t> m_local_bc_height; //temporary workaround std::atomic<uint64_t> m_local_bc_height; //temporary workaround
std::unordered_map<crypto::hash, unconfirmed_transfer_details> m_unconfirmed_txs; std::unordered_map<crypto::hash, unconfirmed_transfer_details> m_unconfirmed_txs;
std::unordered_map<crypto::hash, confirmed_transfer_details> m_confirmed_txs; std::unordered_map<crypto::hash, confirmed_transfer_details> m_confirmed_txs;
std::unordered_map<crypto::hash, payment_details> m_unconfirmed_payments; std::unordered_multimap<crypto::hash, payment_details> m_unconfirmed_payments;
std::unordered_map<crypto::hash, crypto::secret_key> m_tx_keys; std::unordered_map<crypto::hash, crypto::secret_key> m_tx_keys;
transfer_container m_transfers; transfer_container m_transfers;
@ -668,7 +678,7 @@ namespace tools
NodeRPCProxy m_node_rpc_proxy; NodeRPCProxy m_node_rpc_proxy;
}; };
} }
BOOST_CLASS_VERSION(tools::wallet2, 16) BOOST_CLASS_VERSION(tools::wallet2, 17)
BOOST_CLASS_VERSION(tools::wallet2::transfer_details, 7) BOOST_CLASS_VERSION(tools::wallet2::transfer_details, 7)
BOOST_CLASS_VERSION(tools::wallet2::payment_details, 1) BOOST_CLASS_VERSION(tools::wallet2::payment_details, 1)
BOOST_CLASS_VERSION(tools::wallet2::unconfirmed_transfer_details, 6) BOOST_CLASS_VERSION(tools::wallet2::unconfirmed_transfer_details, 6)