From: Alan Modra Date: Fri, 14 Feb 2025 12:40:29 +0000 (+1030) Subject: riscv disassembler leak X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=3a69ff93b5667f357636b292206b43c90b416290;p=thirdparty%2Fbinutils-gdb.git riscv disassembler leak Commit 3f61a38b5e81 moved the disassembler subset_list from a static variable to disassembler private_data. It is now malloc'd in riscv_init_disasm_info so should be freed when disassemble_free_target runs. * riscv-dis.c (disassemble_free_riscv): Free subset_list. --- diff --git a/opcodes/riscv-dis.c b/opcodes/riscv-dis.c index d67b2c2aaf0..84c6deef7b6 100644 --- a/opcodes/riscv-dis.c +++ b/opcodes/riscv-dis.c @@ -1683,5 +1683,8 @@ void disassemble_free_riscv (struct disassemble_info *info ATTRIBUTE_UNUSED) { struct riscv_private_data *pd = info->private_data; if (pd) - riscv_release_subset_list (pd->riscv_rps_dis.subset_list); + { + riscv_release_subset_list (pd->riscv_rps_dis.subset_list); + free (pd->riscv_rps_dis.subset_list); + } }