Remove coinbase-dependant transactions during reorg.
This still leaves transactions in mempool that are potentially invalid if the maturity period has been reorged out of, but at least they're not missing inputs entirely.
This commit is contained in:
parent
4b5b263ac0
commit
868d041622
1 changed files with 2 additions and 3 deletions
|
@ -1892,9 +1892,8 @@ bool static DisconnectTip(CValidationState &state) {
|
||||||
// ignore validation errors in resurrected transactions
|
// ignore validation errors in resurrected transactions
|
||||||
list<CTransaction> removed;
|
list<CTransaction> removed;
|
||||||
CValidationState stateDummy;
|
CValidationState stateDummy;
|
||||||
if (!tx.IsCoinBase())
|
if (tx.IsCoinBase() || !AcceptToMemoryPool(mempool, stateDummy, tx, false, NULL))
|
||||||
if (!AcceptToMemoryPool(mempool, stateDummy, tx, false, NULL))
|
mempool.remove(tx, removed, true);
|
||||||
mempool.remove(tx, removed, true);
|
|
||||||
}
|
}
|
||||||
mempool.check(pcoinsTip);
|
mempool.check(pcoinsTip);
|
||||||
// Update chainActive and related variables.
|
// Update chainActive and related variables.
|
||||||
|
|
Loading…
Reference in a new issue