diff options
author | Mark Johnston <markj@FreeBSD.org> | 2020-02-04 21:18:56 +0000 |
---|---|---|
committer | Mark Johnston <markj@FreeBSD.org> | 2020-02-04 21:18:56 +0000 |
commit | 85642eee469f28516e72eceae0635459c882b8dc (patch) | |
tree | af8663d4740c8e35232b1f5287145eba72e81b1b /contrib/elftoolchain/readelf | |
parent | 37fa1df2d12c16e56747c131d08189c24ed63a6c (diff) | |
download | src-85642eee469f28516e72eceae0635459c882b8dc.tar.gz src-85642eee469f28516e72eceae0635459c882b8dc.zip |
readelf: Don't leak memory when dwarf_get_fde_info_for_all_regs() fails.
CID: 1292493
MFC after: 1 week
Sponsored by: The FreeBSD Foundation
Notes
Notes:
svn path=/head/; revision=357542
Diffstat (limited to 'contrib/elftoolchain/readelf')
-rw-r--r-- | contrib/elftoolchain/readelf/readelf.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/contrib/elftoolchain/readelf/readelf.c b/contrib/elftoolchain/readelf/readelf.c index 636c841ab877..3df4660d2c6c 100644 --- a/contrib/elftoolchain/readelf/readelf.c +++ b/contrib/elftoolchain/readelf/readelf.c @@ -5964,6 +5964,7 @@ dump_dwarf_frame_regtable(struct readelf *re, Dwarf_Fde fde, Dwarf_Addr pc, for (; cur_pc < end_pc; cur_pc++) { if (dwarf_get_fde_info_for_all_regs(fde, cur_pc, &rt, &row_pc, &de) != DW_DLV_OK) { + free(vec); warnx("dwarf_get_fde_info_for_all_regs failed: %s\n", dwarf_errmsg(de)); return (-1); |