diff options
| author | Greg Clayton <gclayton@apple.com> | 2013-08-13 21:32:34 +0000 |
|---|---|---|
| committer | Greg Clayton <gclayton@apple.com> | 2013-08-13 21:32:34 +0000 |
| commit | 86eac940b4641220a73fde9398878793796701c5 (patch) | |
| tree | c498b7089968cb31f3327628446f7dcd3feeb536 /lldb/source/Plugins/ObjectFile | |
| parent | ed1d07282cc9d8e4c25d585e03e5c8a1b6f63a74 (diff) | |
| download | bcm5719-llvm-86eac940b4641220a73fde9398878793796701c5.tar.gz bcm5719-llvm-86eac940b4641220a73fde9398878793796701c5.zip | |
<rdar://problem/14717184>
Improve the documentation for the new target.memory-module-load-level setting, and also return an error when there is no nlist data when appropriate.
llvm-svn: 188317
Diffstat (limited to 'lldb/source/Plugins/ObjectFile')
| -rw-r--r-- | lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp b/lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp index ff66ba93faf..e8d31181bd6 100644 --- a/lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp +++ b/lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp @@ -1555,11 +1555,13 @@ ObjectFileMachO::ParseSymtab () ProcessSP process_sp (m_process_wp.lock()); Process *process = process_sp.get(); + uint32_t memory_module_load_level = eMemoryModuleLoadLevelComplete; + if (process) { Target &target = process->GetTarget(); - const uint32_t memory_module_load_level = target.GetMemoryModuleLoadLevel(); + memory_module_load_level = target.GetMemoryModuleLoadLevel(); SectionSP linkedit_section_sp(section_list->FindSectionByName(GetSegmentNameLINKEDIT())); // Reading mach file from memory in a process or core file... @@ -1674,6 +1676,14 @@ ObjectFileMachO::ParseSymtab () } } + if (nlist_data.GetByteSize() == 0 && memory_module_load_level == eMemoryModuleLoadLevelComplete) + { + if (log) + module_sp->LogMessage(log, "failed to read nlist data"); + return 0; + } + + const bool have_strtab_data = strtab_data.GetByteSize() > 0; if (!have_strtab_data) { |

