Browse Source

Introduced block legacy mode for regtests.

cn_mining
Jianping Wu 5 years ago
parent
commit
1e55d22ac0
  1. 19
      src/primitives/block.h
  2. 6
      src/test/bloom_tests.cpp
  3. 1
      src/test/test_bitcoin.cpp

19
src/primitives/block.h

@ -148,7 +148,7 @@ public: @@ -148,7 +148,7 @@ public:
READWRITE(nBits);
READWRITE(nNonce);
// Genesis block does not have cnHeader.
if (!hashPrevBlock.IsNull()) {
if (!hashPrevBlock.IsNull() && !legacyMode) {
READWRITE(cnHeader);
}
}
@ -161,6 +161,7 @@ public: @@ -161,6 +161,7 @@ public:
nTime = 0;
nBits = 0;
nNonce = 0;
legacyMode = false;
}
bool IsNull() const
@ -178,6 +179,21 @@ public: @@ -178,6 +179,21 @@ public:
{
return (int64_t)nTime;
}
void SetLegacy(bool legacy)
{
legacyMode = legacy;
}
bool isLegacy()
{
return legacyMode;
}
protected:
// When legacyMode is true, cnHeader is not used.
// This is used for regtest.
bool legacyMode;
};
@ -225,6 +241,7 @@ public: @@ -225,6 +241,7 @@ public:
block.nTime = nTime;
block.nBits = nBits;
block.nNonce = nNonce;
block.SetLegacy(legacyMode);
return block;
}

6
src/test/bloom_tests.cpp

File diff suppressed because one or more lines are too long

1
src/test/test_bitcoin.cpp

File diff suppressed because one or more lines are too long
Loading…
Cancel
Save