|
|
@ -3894,15 +3894,16 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, |
|
|
|
|
|
|
|
|
|
|
|
bool fMissingInputs = false; |
|
|
|
bool fMissingInputs = false; |
|
|
|
CValidationState state; |
|
|
|
CValidationState state; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
mapAlreadyAskedFor.erase(inv); |
|
|
|
|
|
|
|
|
|
|
|
if (AcceptToMemoryPool(mempool, state, tx, true, &fMissingInputs)) |
|
|
|
if (AcceptToMemoryPool(mempool, state, tx, true, &fMissingInputs)) |
|
|
|
{ |
|
|
|
{ |
|
|
|
mempool.check(pcoinsTip); |
|
|
|
mempool.check(pcoinsTip); |
|
|
|
RelayTransaction(tx); |
|
|
|
RelayTransaction(tx); |
|
|
|
mapAlreadyAskedFor.erase(inv); |
|
|
|
|
|
|
|
vWorkQueue.push_back(inv.hash); |
|
|
|
vWorkQueue.push_back(inv.hash); |
|
|
|
vEraseQueue.push_back(inv.hash); |
|
|
|
vEraseQueue.push_back(inv.hash); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
LogPrint("mempool", "AcceptToMemoryPool: peer=%d %s : accepted %s (poolsz %u)\n", |
|
|
|
LogPrint("mempool", "AcceptToMemoryPool: peer=%d %s : accepted %s (poolsz %u)\n", |
|
|
|
pfrom->id, pfrom->cleanSubVer, |
|
|
|
pfrom->id, pfrom->cleanSubVer, |
|
|
|
tx.GetHash().ToString(), |
|
|
|
tx.GetHash().ToString(), |
|
|
@ -3928,7 +3929,6 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, |
|
|
|
{ |
|
|
|
{ |
|
|
|
LogPrint("mempool", " accepted orphan tx %s\n", orphanHash.ToString()); |
|
|
|
LogPrint("mempool", " accepted orphan tx %s\n", orphanHash.ToString()); |
|
|
|
RelayTransaction(orphanTx); |
|
|
|
RelayTransaction(orphanTx); |
|
|
|
mapAlreadyAskedFor.erase(CInv(MSG_TX, orphanHash)); |
|
|
|
|
|
|
|
vWorkQueue.push_back(orphanHash); |
|
|
|
vWorkQueue.push_back(orphanHash); |
|
|
|
vEraseQueue.push_back(orphanHash); |
|
|
|
vEraseQueue.push_back(orphanHash); |
|
|
|
} |
|
|
|
} |
|
|
|