diff options
author | Jonathon Anderson <jma14@rice.edu> | 2019-11-01 08:14:05 -0500 |
---|---|---|
committer | Mark Wielaard <mark@klomp.org> | 2019-11-02 01:31:47 +0100 |
commit | 09c9e8091c36eff7f1f4220ac12afe66d0322c59 (patch) | |
tree | 4c4c42d6de3218fe90fd542a45c99035cf846400 /libdw/ChangeLog | |
parent | 347ff6f437420303b95cd1cfa6992a37a769e84a (diff) |
libdw: Don't free uninitialized Dwarf_Abbrev_Hash's of "fake" CUs.
fake_{loc,loclists,addr}_cu are Dwarf_CUs that are created separate from
all the others, so their contents are minimal and mostly initialized by
a calloc. On dwarf_end however, they are freed through the same code path
as all the others, so they call DAH_free like all the others. This changes
that so that these three are exempt from DAH and split-DWARF matters, and
swaps the calloc for a malloc so Memcheck will catch any others.
Signed-off-by: Jonathon Anderson <jma14@rice.edu>
Diffstat (limited to 'libdw/ChangeLog')
-rw-r--r-- | libdw/ChangeLog | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/libdw/ChangeLog b/libdw/ChangeLog index 394c0df2..b1f73bc8 100644 --- a/libdw/ChangeLog +++ b/libdw/ChangeLog @@ -1,3 +1,9 @@ +2019-11-01 Jonathon Anderson <jma14@rice.edu> + + * dwarf_begin_elf.c (valid_p): Switch calloc for malloc for fake CUs. + Add explicit initialization of some fields. + * dwarf_end.c (cu_free): Add clause to limit freeing of CU internals. + 2019-08-26 Jonathon Anderson <jma14@rice.edu> * libdw_alloc.c (__libdw_allocate): Added thread-safe stack allocator. |