From 0ff4a238f31d8b7156b5b3b8cb89a04519a1bfbe Mon Sep 17 00:00:00 2001 From: korenkonder Date: Mon, 30 Sep 2024 20:40:59 +0300 Subject: [PATCH] Enbaya: Fixed memory leak in enb_octet_stream --- src/KKdLib/enbaya.cpp | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/src/KKdLib/enbaya.cpp b/src/KKdLib/enbaya.cpp index 611a67f2..80c5712b 100644 --- a/src/KKdLib/enbaya.cpp +++ b/src/KKdLib/enbaya.cpp @@ -1618,13 +1618,16 @@ static void enb_octet_stream_put_u32(enb_octet_stream* octet_stream, uint32_t va } static void enb_octet_stream_reset(enb_octet_stream* octet_stream) { - for (int32_t i = 0; i < octet_stream->stream_count; i++) { - if (octet_stream->stream_list[i]) { - enb_byte_stream_free(octet_stream->stream_list[i]); - free(octet_stream->stream_list[i]); - octet_stream->byte_stream = 0; - } - octet_stream->stream_list[i] = 0; + if (octet_stream->stream_list) { + for (int32_t i = 0; i < octet_stream->stream_count; i++) + if (octet_stream->stream_list[i]) { + enb_byte_stream_free(octet_stream->stream_list[i]); + free(octet_stream->stream_list[i]); + octet_stream->stream_list[i] = 0; + } + + free(octet_stream->stream_list); + octet_stream->stream_list = 0; } octet_stream->stream_count = 0;