mirror of
https://github.com/EQEmu/Server.git
synced 2025-12-11 16:51:29 +00:00
[Memory Leak] Change raw pointer to unique_ptr to avoid potential leak in dbg stream (#4616)
Co-authored-by: KimLS <KimLS@peqtgc.com>
This commit is contained in:
parent
7a226ca4ef
commit
1f3ac2dc4f
@ -500,10 +500,9 @@ void EQ::Net::DaybreakConnection::ProcessQueue()
|
||||
break;
|
||||
}
|
||||
|
||||
auto packet = iter->second;
|
||||
auto &packet = iter->second;
|
||||
stream->packet_queue.erase(iter);
|
||||
ProcessDecodedPacket(*packet);
|
||||
delete packet;
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -513,9 +512,8 @@ 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;
|
||||
}
|
||||
}
|
||||
|
||||
@ -527,7 +525,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, out));
|
||||
s->packet_queue.emplace(std::make_pair(seq, std::unique_ptr<Packet>(out)));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -201,7 +201,7 @@ namespace EQ
|
||||
|
||||
uint16_t sequence_in;
|
||||
uint16_t sequence_out;
|
||||
std::map<uint16_t, Packet*> packet_queue;
|
||||
std::map<uint16_t, std::unique_ptr<Packet>> packet_queue;
|
||||
|
||||
DynamicPacket fragment_packet;
|
||||
uint32_t fragment_current_bytes;
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user