Skip to content

Commit 7313df6

Browse files
committed
Backport fix for possible memleak when receiving zero size UDP packets.
espressif/arduino-esp32#1672
1 parent 2c348e2 commit 7313df6

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

libraries/WiFi/src/WiFiUdp.cpp

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -221,8 +221,10 @@ int WiFiUDP::parsePacket(){
221221
}
222222
remote_ip = IPAddress(si_other.sin_addr.s_addr);
223223
remote_port = ntohs(si_other.sin_port);
224-
rx_buffer = new cbuf(len);
225-
rx_buffer->write(buf, len);
224+
if (len > 0) {
225+
rx_buffer = new cbuf(len);
226+
rx_buffer->write(buf, len);
227+
}
226228
delete[] buf;
227229
return len;
228230
}

0 commit comments

Comments
 (0)