diff --git a/src/interfaces/node.h b/src/interfaces/node.h index c25e83112001..028172e0e693 100644 --- a/src/interfaces/node.h +++ b/src/interfaces/node.h @@ -88,7 +88,7 @@ class MnEntry virtual const uint256& getProTxHash() const = 0; }; -using MnEntryCPtr = std::shared_ptr; +using MnEntryCPtr = std::unique_ptr; //! Interface for a list of masternode entries class MnList diff --git a/src/node/interfaces.cpp b/src/node/interfaces.cpp index 4daf589ca4b2..d75589e33be8 100644 --- a/src/node/interfaces.cpp +++ b/src/node/interfaces.cpp @@ -161,29 +161,29 @@ class MnListImpl : public MnList void forEachMN(bool only_valid, std::function cb) const override { m_list.ForEachMNShared(only_valid, [&cb](const auto& dmn) { - cb(std::make_shared(dmn)); + cb(std::make_unique(dmn)); }); } MnEntryCPtr getMN(const uint256& hash) const override { const auto dmn{m_list.GetMN(hash)}; - return dmn ? std::make_shared(dmn) : nullptr; + return dmn ? std::make_unique(dmn) : nullptr; } MnEntryCPtr getMNByService(const CService& service) const override { const auto dmn{m_list.GetMNByService(service)}; - return dmn ? std::make_shared(dmn) : nullptr; + return dmn ? std::make_unique(dmn) : nullptr; } MnEntryCPtr getValidMN(const uint256& hash) const override { const auto dmn{m_list.GetValidMN(hash)}; - return dmn ? std::make_shared(dmn) : nullptr; + return dmn ? std::make_unique(dmn) : nullptr; } std::vector getProjectedMNPayees(const CBlockIndex* pindex) const override { std::vector ret; for (const auto& payee : m_list.GetProjectedMNPayees(pindex)) { - ret.emplace_back(std::make_shared(payee)); + ret.emplace_back(std::make_unique(payee)); } return ret; }