Keep memory pool consistent when stuck tx removed

When a stuck tx is removed from memory pool, first remove the associated
spent key images.
This commit is contained in:
warptangent 2015-04-23 05:14:10 -07:00
parent b76857f9d9
commit 641d824f37
No known key found for this signature in database
GPG key ID: 0E490BEBFBE4E92D

View file

@ -257,6 +257,7 @@ namespace cryptonote
(tx_age > CRYPTONOTE_MEMPOOL_TX_FROM_ALT_BLOCK_LIVETIME && it->second.kept_by_block) ) (tx_age > CRYPTONOTE_MEMPOOL_TX_FROM_ALT_BLOCK_LIVETIME && it->second.kept_by_block) )
{ {
LOG_PRINT_L1("Tx " << it->first << " removed from tx pool due to outdated, age: " << tx_age ); LOG_PRINT_L1("Tx " << it->first << " removed from tx pool due to outdated, age: " << tx_age );
remove_transaction_keyimages(it->second.tx);
m_transactions.erase(it++); m_transactions.erase(it++);
}else }else
++it; ++it;