diff --git a/src/symbols/dwarf/dwarf_resolver.cpp b/src/symbols/dwarf/dwarf_resolver.cpp index c7b5bba..1b02c1c 100644 --- a/src/symbols/dwarf/dwarf_resolver.cpp +++ b/src/symbols/dwarf/dwarf_resolver.cpp @@ -212,6 +212,10 @@ namespace libdwarf { split_full_cu_resolvers.clear(); skeleton.reset(); if(aranges) { + for(int i = 0; i < arange_count; i++) { + dwarf_dealloc(dbg, aranges[i], DW_DLA_ARANGE); + aranges[i] = nullptr; + } dwarf_dealloc(dbg, aranges, DW_DLA_LIST); } cu_cache.clear();