diff options
author | Christopher Ferris <cferris@google.com> | 2017-12-15 11:17:45 -0800 |
---|---|---|
committer | Christopher Ferris <cferris@google.com> | 2017-12-15 11:17:45 -0800 |
commit | e7b6624c3fd6bb780f6330448fad175e80469384 (patch) | |
tree | 3d51f04c7a314eddbd0d091b5ae806cdcb18b64d /libunwindstack/tools | |
parent | 3fca67514a0634f1645db5d0a1030e42d061bf69 (diff) | |
download | system_core-e7b6624c3fd6bb780f6330448fad175e80469384.tar.gz system_core-e7b6624c3fd6bb780f6330448fad175e80469384.tar.bz2 system_core-e7b6624c3fd6bb780f6330448fad175e80469384.zip |
Fix issues in libunwindstack.
- Add a load_bias field in MapInfo so that it can be loaded offline,
and also so it can be cached.
- Add an Add function to the Maps class so that it's possible to manually
create a map.
- Remove the OfflineMaps class since I haven't found a reason for this to
exist.
- Add a pointer to the gnu debugdata compressed section in the interface
itself and modify the step path to try eh_frame, then debug_frame, then
gnu_debugdata. This way arm can add exidx as the last step behind
gnu_debugdata. Add an offline test to verify the order of unwind.
- Fix x86_64_ucontext_t since it was a different size on 32 bit and 64 bit
systems.
Test: Pass new unit tests.
Change-Id: I978b70d6c244bd307c62a29886d24c1a8cb2af23
Diffstat (limited to 'libunwindstack/tools')
-rw-r--r-- | libunwindstack/tools/unwind_info.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/libunwindstack/tools/unwind_info.cpp b/libunwindstack/tools/unwind_info.cpp index a00b2ee48..7f2d11d67 100644 --- a/libunwindstack/tools/unwind_info.cpp +++ b/libunwindstack/tools/unwind_info.cpp @@ -87,7 +87,7 @@ void DumpDwarfSection(ElfInterface* interface, DwarfSection* section, uint64_t l for (const DwarfFde* fde : *section) { // Sometimes there are entries that have empty length, skip those since // they don't contain any interesting information. - if (fde->pc_start == fde->pc_end) { + if (fde == nullptr || fde->pc_start == fde->pc_end) { continue; } printf("\n PC 0x%" PRIx64, fde->pc_start + load_bias); |