fix stun packet memory leak.

This commit is contained in:
Johnny 2021-08-19 19:14:58 +08:00
parent 1cddc2227b
commit 6f3f69b459

View File

@ -238,12 +238,12 @@ bool is_rtcp(char *buf) {
void WebRtcTransport::inputSockData(char *buf, int len, RTC::TransportTuple *tuple) { void WebRtcTransport::inputSockData(char *buf, int len, RTC::TransportTuple *tuple) {
if (RTC::StunPacket::IsStun((const uint8_t *) buf, len)) { if (RTC::StunPacket::IsStun((const uint8_t *) buf, len)) {
RTC::StunPacket *packet = RTC::StunPacket::Parse((const uint8_t *) buf, len); std::unique_ptr<RTC::StunPacket> packet(RTC::StunPacket::Parse((const uint8_t *) buf, len));
if (packet == nullptr) { if (!packet) {
WarnL << "parse stun error" << std::endl; WarnL << "parse stun error" << std::endl;
return; return;
} }
_ice_server->ProcessStunPacket(packet, tuple); _ice_server->ProcessStunPacket(packet.get(), tuple);
return; return;
} }
if (is_dtls(buf)) { if (is_dtls(buf)) {