aboutsummaryrefslogtreecommitdiff
path: root/src/rpc/misc.cpp
diff options
context:
space:
mode:
authorSebastian Falbesoner <sebastian.falbesoner@gmail.com>2020-12-01 00:36:36 +0100
committerSebastian Falbesoner <sebastian.falbesoner@gmail.com>2021-03-29 23:29:42 +0200
commit8dbb87a3932f81e23ba7afd865b9aeeb535f0c20 (patch)
tree2b1376e9bb8f6792946c6fabdffdc6a5a73fd8d2 /src/rpc/misc.cpp
parent95cccf8a4b392959c1fd7ec0647e04eb13880865 (diff)
downloadbitcoin-8dbb87a3932f81e23ba7afd865b9aeeb535f0c20.tar.xz
refactor: replace util::Ref by std::any (C++17)
Diffstat (limited to 'src/rpc/misc.cpp')
-rw-r--r--src/rpc/misc.cpp14
1 files changed, 7 insertions, 7 deletions
diff --git a/src/rpc/misc.cpp b/src/rpc/misc.cpp
index 143be1274e..1df5c51718 100644
--- a/src/rpc/misc.cpp
+++ b/src/rpc/misc.cpp
@@ -17,7 +17,6 @@
#include <script/descriptor.h>
#include <util/check.h>
#include <util/message.h> // For MessageSign(), MessageVerify()
-#include <util/ref.h>
#include <util/strencodings.h>
#include <util/system.h>
@@ -391,8 +390,9 @@ static RPCHelpMan setmocktime()
throw JSONRPCError(RPC_INVALID_PARAMETER, strprintf("Mocktime can not be negative: %s.", time));
}
SetMockTime(time);
- if (request.context.Has<NodeContext>()) {
- for (const auto& chain_client : request.context.Get<NodeContext>().chain_clients) {
+ auto node_context = util::AnyPtr<NodeContext>(request.context);
+ if (node_context) {
+ for (const auto& chain_client : node_context->chain_clients) {
chain_client->setMockTime(time);
}
}
@@ -424,11 +424,11 @@ static RPCHelpMan mockscheduler()
throw std::runtime_error("delta_time must be between 1 and 3600 seconds (1 hr)");
}
+ auto node_context = util::AnyPtr<NodeContext>(request.context);
// protect against null pointer dereference
- CHECK_NONFATAL(request.context.Has<NodeContext>());
- NodeContext& node = request.context.Get<NodeContext>();
- CHECK_NONFATAL(node.scheduler);
- node.scheduler->MockForward(std::chrono::seconds(delta_seconds));
+ CHECK_NONFATAL(node_context);
+ CHECK_NONFATAL(node_context->scheduler);
+ node_context->scheduler->MockForward(std::chrono::seconds(delta_seconds));
return NullUniValue;
},