From fe66c2435261fb28676d1402a52b1906386d2ac8 Mon Sep 17 00:00:00 2001 From: Akkadius Date: Mon, 27 Jan 2025 16:34:05 -0600 Subject: [PATCH] Revert "[Memory Leak] Change raw pointer to unique_ptr to avoid potential leak in dbg stream (#4616)" This reverts commit 1f3ac2dc4fd62e3e0d0c9cec210843d7202be0cd. --- common/net/daybreak_connection.cpp | 8 +++++--- common/net/daybreak_connection.h | 2 +- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/common/net/daybreak_connection.cpp b/common/net/daybreak_connection.cpp index 6af6576b1..0fefc9982 100644 --- a/common/net/daybreak_connection.cpp +++ b/common/net/daybreak_connection.cpp @@ -500,9 +500,10 @@ void EQ::Net::DaybreakConnection::ProcessQueue() break; } - auto &packet = iter->second; + auto packet = iter->second; stream->packet_queue.erase(iter); ProcessDecodedPacket(*packet); + delete packet; } } } @@ -512,8 +513,9 @@ void EQ::Net::DaybreakConnection::RemoveFromQueue(int stream, uint16_t seq) auto s = &m_streams[stream]; auto iter = s->packet_queue.find(seq); if (iter != s->packet_queue.end()) { - auto &packet = iter->second; + auto packet = iter->second; s->packet_queue.erase(iter); + delete packet; } } @@ -525,7 +527,7 @@ void EQ::Net::DaybreakConnection::AddToQueue(int stream, uint16_t seq, const Pac DynamicPacket *out = new DynamicPacket(); out->PutPacket(0, p); - s->packet_queue.emplace(std::make_pair(seq, std::unique_ptr(out))); + s->packet_queue.emplace(std::make_pair(seq, out)); } } diff --git a/common/net/daybreak_connection.h b/common/net/daybreak_connection.h index 2561f91a4..c2c714813 100644 --- a/common/net/daybreak_connection.h +++ b/common/net/daybreak_connection.h @@ -201,7 +201,7 @@ namespace EQ uint16_t sequence_in; uint16_t sequence_out; - std::map> packet_queue; + std::map packet_queue; DynamicPacket fragment_packet; uint32_t fragment_current_bytes;