@@ -131,7 +131,7 @@ static RPCHelpMan getnetworkhashps()
131131 };
132132}
133133
134- static bool GenerateBlock (ChainstateManager& chainman, Mining& miner, CBlock&& block, uint64_t & max_tries, std::shared_ptr<const CBlock>& block_out, bool process_new_block)
134+ static bool GenerateBlock (ChainstateManager& chainman, CBlock&& block, uint64_t & max_tries, std::shared_ptr<const CBlock>& block_out, bool process_new_block)
135135{
136136 block_out.reset ();
137137 block.hashMerkleRoot = BlockMerkleRoot (block);
@@ -151,7 +151,7 @@ static bool GenerateBlock(ChainstateManager& chainman, Mining& miner, CBlock&& b
151151
152152 if (!process_new_block) return true ;
153153
154- if (!miner. processNewBlock (block_out, nullptr )) {
154+ if (!chainman. ProcessNewBlock (block_out, /* force_processing= */ true , /* min_pow_checked= */ true , nullptr )) {
155155 throw JSONRPCError (RPC_INTERNAL_ERROR, " ProcessNewBlock, block not accepted" );
156156 }
157157
@@ -166,7 +166,7 @@ static UniValue generateBlocks(ChainstateManager& chainman, Mining& miner, const
166166 CHECK_NONFATAL (block_template);
167167
168168 std::shared_ptr<const CBlock> block_out;
169- if (!GenerateBlock (chainman, miner, block_template->getBlock (), nMaxTries, block_out, /* process_new_block=*/ true )) {
169+ if (!GenerateBlock (chainman, block_template->getBlock (), nMaxTries, block_out, /* process_new_block=*/ true )) {
170170 break ;
171171 }
172172
@@ -394,7 +394,7 @@ static RPCHelpMan generateblock()
394394 std::shared_ptr<const CBlock> block_out;
395395 uint64_t max_tries{DEFAULT_MAX_TRIES};
396396
397- if (!GenerateBlock (chainman, miner, std::move (block), max_tries, block_out, process_new_block) || !block_out) {
397+ if (!GenerateBlock (chainman, std::move (block), max_tries, block_out, process_new_block) || !block_out) {
398398 throw JSONRPCError (RPC_MISC_ERROR, " Failed to make block." );
399399 }
400400
@@ -1034,13 +1034,10 @@ static RPCHelpMan submitblock()
10341034 }
10351035 }
10361036
1037- NodeContext& node = EnsureAnyNodeContext (request.context );
1038- Mining& miner = EnsureMining (node);
1039-
10401037 bool new_block;
10411038 auto sc = std::make_shared<submitblock_StateCatcher>(block.GetHash ());
10421039 CHECK_NONFATAL (chainman.m_options .signals )->RegisterSharedValidationInterface (sc);
1043- bool accepted = miner. processNewBlock (blockptr, /* new_block=*/ &new_block);
1040+ bool accepted = chainman. ProcessNewBlock (blockptr, /* force_processing= */ true , /* min_pow_checked= */ true , /* new_block=*/ &new_block);
10441041 CHECK_NONFATAL (chainman.m_options .signals )->UnregisterSharedValidationInterface (sc);
10451042 if (!new_block && accepted) {
10461043 return " duplicate" ;
0 commit comments