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: 99088d60d8a7747c6d1a7fd5d8cd388be1b3e138
This commit is contained in:
parent
71cc9d9fe8
commit
684636ba67
|
@ -196,7 +196,10 @@ public:
|
||||||
m_value = n;
|
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) {
|
if (vch.size() > nMaxNumSize) {
|
||||||
throw scriptnum_error("script number overflow");
|
throw scriptnum_error("script number overflow");
|
||||||
|
@ -319,8 +322,6 @@ public:
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
static const size_t nMaxNumSize = 4;
|
|
||||||
|
|
||||||
private:
|
private:
|
||||||
static int64_t set_vch(const std::vector<unsigned char>& vch)
|
static int64_t set_vch(const std::vector<unsigned char>& vch)
|
||||||
{
|
{
|
||||||
|
|
|
@ -145,7 +145,7 @@ static void RunCreate(const int64_t& num)
|
||||||
{
|
{
|
||||||
CheckCreateInt(num);
|
CheckCreateInt(num);
|
||||||
CScriptNum scriptnum(num);
|
CScriptNum scriptnum(num);
|
||||||
if (scriptnum.getvch().size() <= CScriptNum::nMaxNumSize)
|
if (scriptnum.getvch().size() <= CScriptNum::nDefaultMaxNumSize)
|
||||||
CheckCreateVch(num);
|
CheckCreateVch(num);
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue