mirror of
https://github.com/dashpay/dash.git
synced 2024-12-25 12:02:48 +01:00
c4af738
Fix ignoring tx data requests when fPauseSend is set on a peer (Matt Corallo) Pull request description: This resolves a bug introduced in66aa1d58a1
where, if when responding to a series of transaction requests in a getdata we hit the send buffer limit and set fPauseSend, we will skip one transaction per call to ProcessGetData. Bug found by Cory Fields (@theuni). Probably worth slipping into 0.16 :/. Tree-SHA512: a9313cef8ac6da31eb099c9925c8401a638220cf7bc9b7b7b83151ecae4b02630f2db45ef6668302b9bb0f38571afbd764993427f1ec9e4d74d9a3be6647d299
This commit is contained in:
parent
8b14adb206
commit
e69c6c3207
@ -1382,10 +1382,10 @@ void static ProcessGetData(CNode* pfrom, const Consensus::Params& consensusParam
|
|||||||
}
|
}
|
||||||
} // release cs_main
|
} // release cs_main
|
||||||
|
|
||||||
if (it != pfrom->vRecvGetData.end()) {
|
if (it != pfrom->vRecvGetData.end() && !pfrom->fPauseSend) {
|
||||||
const CInv &inv = *it;
|
const CInv &inv = *it;
|
||||||
it++;
|
|
||||||
if (inv.type == MSG_BLOCK || inv.type == MSG_FILTERED_BLOCK || inv.type == MSG_CMPCT_BLOCK) {
|
if (inv.type == MSG_BLOCK || inv.type == MSG_FILTERED_BLOCK || inv.type == MSG_CMPCT_BLOCK) {
|
||||||
|
it++;
|
||||||
ProcessGetBlockData(pfrom, consensusParams, inv, connman, interruptMsgProc);
|
ProcessGetBlockData(pfrom, consensusParams, inv, connman, interruptMsgProc);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user