aboutsummaryrefslogtreecommitdiffstats
path: root/epan
diff options
context:
space:
mode:
authorJohn Thacker <johnthacker@gmail.com>2022-08-16 23:03:10 -0400
committerA Wireshark GitLab Utility <gerald+gitlab-utility@wireshark.org>2022-08-17 13:41:09 +0000
commit704d6ff104607baa9cda58ef4bbb9fc233ac5025 (patch)
treefb5bf6041248fdaccd255e7e9f5744fea76ac875 /epan
parent117788f6941a4c1a777d1f163da9d4fd31fb73aa (diff)
smb: Squash small leak in export object
After a free chunk is removed from the list of free chunks, it should be freed.
Diffstat (limited to 'epan')
-rw-r--r--epan/dissectors/packet-smb.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/epan/dissectors/packet-smb.c b/epan/dissectors/packet-smb.c
index a8b9b3c973..150f3343e3 100644
--- a/epan/dissectors/packet-smb.c
+++ b/epan/dissectors/packet-smb.c
@@ -1095,6 +1095,7 @@ insert_chunk(active_file *file, export_object_entry_t *entry, const smb_eo_t *
if (chunk_offset<=current_free_chunk->start_offset && chunk_end_offset>=current_free_chunk->end_offset) {
file->data_gathered += current_free_chunk->end_offset-current_free_chunk->start_offset+1;
file->free_chunk_list = g_slist_remove(file->free_chunk_list, current_free_chunk);
+ g_free(current_free_chunk);
nfreechunks -= 1;
if (nfreechunks == 0) { /* The free chunk list is empty */
g_slist_free(file->free_chunk_list);