diff --git a/llarp/messages/link_message_parser.cpp b/llarp/messages/link_message_parser.cpp index 33dc4394f..49d418c0d 100644 --- a/llarp/messages/link_message_parser.cpp +++ b/llarp/messages/link_message_parser.cpp @@ -28,13 +28,15 @@ namespace llarp }; InboundMessageParser::InboundMessageParser(AbstractRouter* _router) - : router(_router), from(nullptr), msg(nullptr), holder(new msg_holder_t()) + : router(_router) + , from(nullptr) + , msg(nullptr) + , holder(std::make_unique< msg_holder_t >()) { } InboundMessageParser::~InboundMessageParser() { - delete holder; } bool diff --git a/llarp/messages/link_message_parser.hpp b/llarp/messages/link_message_parser.hpp index 4d23a9f01..01fcf23d0 100644 --- a/llarp/messages/link_message_parser.hpp +++ b/llarp/messages/link_message_parser.hpp @@ -44,7 +44,8 @@ namespace llarp ILinkMessage* msg; struct msg_holder_t; - msg_holder_t* holder; + + std::unique_ptr< msg_holder_t > holder; }; } // namespace llarp #endif