30 lines
766 B
Diff
30 lines
766 B
Diff
From 8a24927bc8dbf6beac2000593b21235c3796dc35 Mon Sep 17 00:00:00 2001
|
|
From: Alan Modra <amodra@gmail.com>
|
|
Date: Mon, 20 Jun 2022 10:39:13 +0930
|
|
Subject: [PATCH] PR29261, memory leak in parse_stab_struct_fields
|
|
|
|
PR 29261
|
|
* stabs.c (parse_stab_struct_fields): Free "fields" on failure path.
|
|
---
|
|
binutils/stabs.c | 5 ++++-
|
|
1 file changed, 4 insertions(+), 1 deletion(-)
|
|
|
|
diff --git a/binutils/stabs.c b/binutils/stabs.c
|
|
index 796ff85b86a..bf3f578cbcc 100644
|
|
--- a/binutils/stabs.c
|
|
+++ b/binutils/stabs.c
|
|
@@ -2367,7 +2367,10 @@ parse_stab_struct_fields (void *dhandle,
|
|
|
|
if (! parse_stab_one_struct_field (dhandle, info, pp, p, fields + c,
|
|
staticsp, p_end))
|
|
- return false;
|
|
+ {
|
|
+ free (fields);
|
|
+ return false;
|
|
+ }
|
|
|
|
++c;
|
|
}
|
|
--
|
|
2.39.3
|