From 2a97af80db8e82d77e1d40968f39774319e23868 Mon Sep 17 00:00:00 2001 From: Cameron Garnham Date: Tue, 4 Apr 2017 11:38:38 +0200 Subject: Refactor Code-Example with Better Formatting No-need to calculate the GetMedianTimePast() value twice. --- bip-0148.mediawiki | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) (limited to 'bip-0148.mediawiki') diff --git a/bip-0148.mediawiki b/bip-0148.mediawiki index 13ad4cd..5accfcf 100644 --- a/bip-0148.mediawiki +++ b/bip-0148.mediawiki @@ -38,13 +38,14 @@ While this BIP is active, all blocks must set the nVersion header top 3 bits to
 // 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");
     }
 }
-- 
cgit v1.2.3