mirror of
https://github.com/ElementsProject/elements.git
synced 2026-08-15 12:51:00 +02:00
Merge c95784e3d3 into merged_master (Bitcoin PR #20016)
This commit is contained in:
commit
07d50b2951
8 changed files with 21 additions and 19 deletions
|
|
@ -1778,7 +1778,7 @@ uint256 SignatureHash(const CScript& scriptCode, const T& txTo, unsigned int nIn
|
|||
if ((nHashType & 0x1f) == SIGHASH_SINGLE) {
|
||||
if (nIn >= txTo.vout.size()) {
|
||||
// nOut out of range
|
||||
return UINT256_ONE();
|
||||
return uint256::ONE;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -28,7 +28,7 @@ uint256 static SignatureHashOld(CScript scriptCode, const CTransaction& txTo, un
|
|||
{
|
||||
if (nIn >= txTo.vin.size())
|
||||
{
|
||||
return UINT256_ONE();
|
||||
return uint256::ONE;
|
||||
}
|
||||
CMutableTransaction txTmp(txTo);
|
||||
|
||||
|
|
@ -58,7 +58,7 @@ uint256 static SignatureHashOld(CScript scriptCode, const CTransaction& txTo, un
|
|||
unsigned int nOut = nIn;
|
||||
if (nOut >= txTmp.vout.size())
|
||||
{
|
||||
return UINT256_ONE();
|
||||
return uint256::ONE;
|
||||
}
|
||||
txTmp.vout.resize(nOut+1);
|
||||
for (unsigned int i = 0; i < nOut; i++)
|
||||
|
|
|
|||
|
|
@ -278,4 +278,10 @@ BOOST_AUTO_TEST_CASE( operator_with_self )
|
|||
BOOST_CHECK(v == UintToArith256(uint256S("0")));
|
||||
}
|
||||
|
||||
BOOST_AUTO_TEST_CASE( check_ONE )
|
||||
{
|
||||
uint256 one = uint256S("0000000000000000000000000000000000000000000000000000000000000001");
|
||||
BOOST_CHECK_EQUAL(one, uint256::ONE);
|
||||
}
|
||||
|
||||
BOOST_AUTO_TEST_SUITE_END()
|
||||
|
|
|
|||
|
|
@ -80,7 +80,4 @@ template std::string base_blob<256>::ToString() const;
|
|||
template void base_blob<256>::SetHex(const char*);
|
||||
template void base_blob<256>::SetHex(const std::string&);
|
||||
|
||||
uint256& UINT256_ONE() {
|
||||
static uint256* one = new uint256(uint256S("0000000000000000000000000000000000000000000000000000000000000001"));
|
||||
return *one;
|
||||
}
|
||||
const uint256 uint256::ONE(1);
|
||||
|
|
|
|||
|
|
@ -20,10 +20,11 @@ protected:
|
|||
static constexpr int WIDTH = BITS / 8;
|
||||
uint8_t m_data[WIDTH];
|
||||
public:
|
||||
base_blob()
|
||||
{
|
||||
memset(m_data, 0, sizeof(m_data));
|
||||
}
|
||||
/* construct 0 value by default */
|
||||
constexpr base_blob() : m_data() {}
|
||||
|
||||
/* constructor for constants between 1 and 255 */
|
||||
constexpr explicit base_blob(uint8_t v) : m_data{v} {}
|
||||
|
||||
explicit base_blob(const std::vector<unsigned char>& vch);
|
||||
|
||||
|
|
@ -111,7 +112,7 @@ public:
|
|||
*/
|
||||
class uint160 : public base_blob<160> {
|
||||
public:
|
||||
uint160() {}
|
||||
constexpr uint160() {}
|
||||
explicit uint160(const std::vector<unsigned char>& vch) : base_blob<160>(vch) {}
|
||||
};
|
||||
|
||||
|
|
@ -122,8 +123,10 @@ public:
|
|||
*/
|
||||
class uint256 : public base_blob<256> {
|
||||
public:
|
||||
uint256() {}
|
||||
constexpr uint256() {}
|
||||
constexpr explicit uint256(uint8_t v) : base_blob<256>(v) {}
|
||||
explicit uint256(const std::vector<unsigned char>& vch) : base_blob<256>(vch) {}
|
||||
static const uint256 ONE;
|
||||
};
|
||||
|
||||
/* uint256 from const char *.
|
||||
|
|
@ -147,6 +150,4 @@ inline uint256 uint256S(const std::string& str)
|
|||
return rv;
|
||||
}
|
||||
|
||||
uint256& UINT256_ONE();
|
||||
|
||||
#endif // BITCOIN_UINT256_H
|
||||
|
|
|
|||
|
|
@ -662,7 +662,7 @@ std::unique_ptr<CKeyMetadata> LegacyScriptPubKeyMan::GetMetadata(const CTxDestin
|
|||
|
||||
uint256 LegacyScriptPubKeyMan::GetID() const
|
||||
{
|
||||
return UINT256_ONE();
|
||||
return uint256::ONE;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -332,8 +332,6 @@ std::shared_ptr<CWallet> CreateWallet(interfaces::Chain& chain, const std::strin
|
|||
return wallet;
|
||||
}
|
||||
|
||||
const uint256 CWalletTx::ABANDON_HASH(UINT256_ONE());
|
||||
|
||||
/** @defgroup mapWallet
|
||||
*
|
||||
* @{
|
||||
|
|
|
|||
|
|
@ -283,7 +283,7 @@ private:
|
|||
/** Constant used in hashBlock to indicate tx has been abandoned, only used at
|
||||
* serialization/deserialization to avoid ambiguity with conflicted.
|
||||
*/
|
||||
static const uint256 ABANDON_HASH;
|
||||
static constexpr const uint256& ABANDON_HASH = uint256::ONE;
|
||||
|
||||
public:
|
||||
/**
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue