From 75d9b72475708ee0da13fb23ef65dcced805b6af Mon Sep 17 00:00:00 2001 From: stickies-v Date: Fri, 5 Sep 2025 15:46:44 +0100 Subject: [PATCH] kernel: make blockTip index const Notification interface subscribers need to view, but not mutate, the index. --- src/bitcoin-chainstate.cpp | 2 +- src/kernel/notifications_interface.h | 2 +- src/node/kernel_notifications.cpp | 2 +- src/node/kernel_notifications.h | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/bitcoin-chainstate.cpp b/src/bitcoin-chainstate.cpp index 4ac6a6f41a1..46e6f06e27f 100644 --- a/src/bitcoin-chainstate.cpp +++ b/src/bitcoin-chainstate.cpp @@ -74,7 +74,7 @@ int main(int argc, char* argv[]) class KernelNotifications : public kernel::Notifications { public: - kernel::InterruptResult blockTip(SynchronizationState, CBlockIndex&, double) override + kernel::InterruptResult blockTip(SynchronizationState, const CBlockIndex&, double) override { std::cout << "Block tip changed" << std::endl; return {}; diff --git a/src/kernel/notifications_interface.h b/src/kernel/notifications_interface.h index 3e97e3b45e9..816f06307be 100644 --- a/src/kernel/notifications_interface.h +++ b/src/kernel/notifications_interface.h @@ -37,7 +37,7 @@ class Notifications public: virtual ~Notifications() = default; - [[nodiscard]] virtual InterruptResult blockTip(SynchronizationState state, CBlockIndex& index, double verification_progress) { return {}; } + [[nodiscard]] virtual InterruptResult blockTip(SynchronizationState state, const CBlockIndex& index, double verification_progress) { return {}; } virtual void headerTip(SynchronizationState state, int64_t height, int64_t timestamp, bool presync) {} virtual void progress(const bilingual_str& title, int progress_percent, bool resume_possible) {} virtual void warningSet(Warning id, const bilingual_str& message) {} diff --git a/src/node/kernel_notifications.cpp b/src/node/kernel_notifications.cpp index 4a6f8444dac..56c7188ac1a 100644 --- a/src/node/kernel_notifications.cpp +++ b/src/node/kernel_notifications.cpp @@ -48,7 +48,7 @@ static void AlertNotify(const std::string& strMessage) namespace node { -kernel::InterruptResult KernelNotifications::blockTip(SynchronizationState state, CBlockIndex& index, double verification_progress) +kernel::InterruptResult KernelNotifications::blockTip(SynchronizationState state, const CBlockIndex& index, double verification_progress) { { LOCK(m_tip_block_mutex); diff --git a/src/node/kernel_notifications.h b/src/node/kernel_notifications.h index 10ee3e18d74..21d2ea43241 100644 --- a/src/node/kernel_notifications.h +++ b/src/node/kernel_notifications.h @@ -35,7 +35,7 @@ public: KernelNotifications(const std::function& shutdown_request, std::atomic& exit_status, node::Warnings& warnings) : m_shutdown_request(shutdown_request), m_exit_status{exit_status}, m_warnings{warnings} {} - [[nodiscard]] kernel::InterruptResult blockTip(SynchronizationState state, CBlockIndex& index, double verification_progress) override EXCLUSIVE_LOCKS_REQUIRED(!m_tip_block_mutex); + [[nodiscard]] kernel::InterruptResult blockTip(SynchronizationState state, const CBlockIndex& index, double verification_progress) override EXCLUSIVE_LOCKS_REQUIRED(!m_tip_block_mutex); void headerTip(SynchronizationState state, int64_t height, int64_t timestamp, bool presync) override;