aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon Marchi <simon.marchi@efficios.com>2025-03-10 11:10:48 -0400
committerSimon Marchi <simon.marchi@polymtl.ca>2025-03-19 15:15:34 -0400
commitc509b986479147fd29f9abe8438d05c7781b4f29 (patch)
treec360d8b297498e9a058c58282e40a0f2ac266631
parentbab86877e484f978ebbd1bfd5cdf15773b36ceee (diff)
downloadbinutils-c509b986479147fd29f9abe8438d05c7781b4f29.zip
binutils-c509b986479147fd29f9abe8438d05c7781b4f29.tar.gz
binutils-c509b986479147fd29f9abe8438d05c7781b4f29.tar.bz2
gdb: handle INTERNALVAR_FUNCTION in clear_internalvar
While checking the list of leaks reported by ASan, I found that clear_internalvar doesn't free the internal_function object owned by the internalvar when the internalvar is of kind INTERNALVAR_FUNCTION, fix that. Change-Id: I78f53b83b97bae39370a7b5ba5e1cec70626d66a Reviewed-By: Guinevere Larsen <guinevere@redhat.com>
-rw-r--r--gdb/value.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/gdb/value.c b/gdb/value.c
index 8b8b5c8..e36feaf 100644
--- a/gdb/value.c
+++ b/gdb/value.c
@@ -2322,6 +2322,10 @@ clear_internalvar (struct internalvar *var)
xfree (var->u.string);
break;
+ case INTERNALVAR_FUNCTION:
+ delete var->u.fn.function;
+ break;
+
default:
break;
}