mirror of
https://github.com/bitcoin/bitcoin.git
synced 2026-01-22 00:00:55 +01:00
Make CScriptNum() take nMaxNumSize as an argument
While the existing numeric opcodes are all limited to 4-byte bignum
arguments, new opcodes will need different limits.
Rebased-From: 99088d60d8
This commit is contained in:
@@ -196,7 +196,10 @@ public:
|
||||
m_value = n;
|
||||
}
|
||||
|
||||
explicit CScriptNum(const std::vector<unsigned char>& vch, bool fRequireMinimal)
|
||||
static const size_t nDefaultMaxNumSize = 4;
|
||||
|
||||
explicit CScriptNum(const std::vector<unsigned char>& vch, bool fRequireMinimal,
|
||||
const size_t nMaxNumSize = nDefaultMaxNumSize)
|
||||
{
|
||||
if (vch.size() > nMaxNumSize) {
|
||||
throw scriptnum_error("script number overflow");
|
||||
@@ -319,8 +322,6 @@ public:
|
||||
return result;
|
||||
}
|
||||
|
||||
static const size_t nMaxNumSize = 4;
|
||||
|
||||
private:
|
||||
static int64_t set_vch(const std::vector<unsigned char>& vch)
|
||||
{
|
||||
|
||||
@@ -145,7 +145,7 @@ static void RunCreate(const int64_t& num)
|
||||
{
|
||||
CheckCreateInt(num);
|
||||
CScriptNum scriptnum(num);
|
||||
if (scriptnum.getvch().size() <= CScriptNum::nMaxNumSize)
|
||||
if (scriptnum.getvch().size() <= CScriptNum::nDefaultMaxNumSize)
|
||||
CheckCreateVch(num);
|
||||
else
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user