Browse Source

Refactor Code-Example with Better Formatting

No-need to calculate the GetMedianTimePast() value twice.
master
Cameron Garnham 8 years ago
parent
commit
2a97af80db
  1. 13
      bip-0148.mediawiki

13
bip-0148.mediawiki

@ -38,13 +38,14 @@ While this BIP is active, all blocks must set the nVersion header top 3 bits to
<pre>
// BIP148 mandatory segwit signalling.
if (pindex->GetMedianTimePast() >= 1501545600 && // Tue 1 Aug 2017 00:00:00 UTC
pindex->GetMedianTimePast() <= 1510704000 && // Wed 15 Nov 2017 00:00:00 UTC
!IsWitnessEnabled(pindex->pprev, chainparams.GetConsensus()))
int64_t nMedianTimePast = pindex->GetMedianTimePast();
if ( (nMedianTimePast >= 1501545600) && // Tue 01 Aug 2017 00:00:00 UTC
(nMedianTimePast <= 1510704000) && // Wed 15 Nov 2017 00:00:00 UTC
(!IsWitnessEnabled(pindex->pprev, chainparams.GetConsensus())) ) // Segwit is not active
{
// versionbits topbit and segwit flag must be set.
if ((pindex->nVersion & VERSIONBITS_TOP_MASK) != VERSIONBITS_TOP_BITS ||
(pindex->nVersion & VersionBitsMask(chainparams.GetConsensus(), Consensus::DEPLOYMENT_SEGWIT)) == 0) {
bool fVersionBits = (pindex->nVersion & VERSIONBITS_TOP_MASK) == VERSIONBITS_TOP_BITS; // BIP9 bit set
bool fSegbit = (pindex->nVersion & VersionBitsMask(chainparams.GetConsensus(), Consensus::DEPLOYMENT_SEGWIT)) != 0; // segwit bit set
if (!(fVersionBits && fSegbit)) {
return state.DoS(0, error("ConnectBlock(): relayed block must signal for segwit, please upgrade"), REJECT_INVALID, "bad-no-segwit");
}
}

Loading…
Cancel
Save