From b73ff4ccfe70f1cc5451f3f7570cd6e2e8246621 Mon Sep 17 00:00:00 2001 From: Gregory Sanders Date: Wed, 25 Sep 2019 21:01:55 -0400 Subject: [PATCH] Fix liquidv1 sync A single field wasn't given a positive value which meant it considers no peg-ins to be valid. --- src/chainparams.cpp | 3 +++ src/consensus/params.h | 3 ++- src/pegins.cpp | 2 +- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/chainparams.cpp b/src/chainparams.cpp index 37412b381c..4f96ae8034 100644 --- a/src/chainparams.cpp +++ b/src/chainparams.cpp @@ -725,6 +725,9 @@ public: g_con_blockheightinheader = true; g_con_elementsmode = true; + // TODO: Pick appropriate value for this network. + consensus.total_valid_epochs = 2; + consensus.genesis_subsidy = 0; diff --git a/src/consensus/params.h b/src/consensus/params.h index b5be5eae12..aaf4cf1401 100644 --- a/src/consensus/params.h +++ b/src/consensus/params.h @@ -106,7 +106,8 @@ struct Params { // Used to seed the extension space for first dynamic blocks std::vector> first_extension_space; // Used to allow M-epoch-old peg-in addresses as deposits - size_t total_valid_epochs; + // default 1 to not break legacy chains implicitly. + size_t total_valid_epochs = 1; }; } // namespace Consensus diff --git a/src/pegins.cpp b/src/pegins.cpp index c013a970dc..167d1cd3dd 100644 --- a/src/pegins.cpp +++ b/src/pegins.cpp @@ -492,7 +492,7 @@ std::vector> GetValidFedpegScripts(const CBlockIndex fedpegscripts.push_back(std::make_pair(GetScriptForDestination(ScriptHash(GetScriptForDestination(WitnessV0ScriptHash(params.fedpegScript)))), params.fedpegScript)); } } - // Only return up to the latest two of three possible fedpegscripts, which are enforced + // Only return up to the latest total_valid_epochs fedpegscripts, which are enforced fedpegscripts.resize(std::min(fedpegscripts.size(), params.total_valid_epochs)); return fedpegscripts; }