remove orphaned descendents of peg-ins on block receive

This commit is contained in:
Gregory Sanders 2017-12-18 14:09:39 -05:00
parent 9627f30bd7
commit 9cb8b449f5

View file

@ -637,9 +637,12 @@ void CTxMemPool::removeForBlock(const std::vector<CTransactionRef>& vtx, unsigne
if (it2 != mapWithdrawsSpentToTxid.end()) { if (it2 != mapWithdrawsSpentToTxid.end()) {
txiter txit = mapTx.find(it2->second); txiter txit = mapTx.find(it2->second);
assert(txit != mapTx.end()); assert(txit != mapTx.end());
const CTransaction& tx = txit->GetTx();
setEntries stage; setEntries stage;
stage.insert(txit); stage.insert(txit);
RemoveStaged(stage, true); RemoveStaged(stage, true);
removeRecursive(tx, MemPoolRemovalReason::CONFLICT);
ClearPrioritisation(it2->second);
} }
} }
lastRollingFeeUpdate = GetTime(); lastRollingFeeUpdate = GetTime();