summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp b/lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
index 70e0997e2d3..d82a1addd33 100644
--- a/lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
+++ b/lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
@@ -2737,9 +2737,12 @@ size_t ObjectFileMachO::ParseSymtab() {
nlist_index++) {
/////////////////////////////
{
- struct nlist_64 nlist;
- if (!ParseNList(dsc_local_symbols_data, nlist_data_offset, nlist_byte_size, nlist)
+ llvm::Optional<struct nlist_64> nlist_maybe =
+ ParseNList(dsc_local_symbols_data, nlist_data_offset,
+ nlist_byte_size);
+ if (!nlist_maybe)
break;
+ struct nlist_64 nlist = *nlist_maybe;
SymbolType type = eSymbolTypeInvalid;
const char *symbol_name = dsc_local_symbols_data.PeekCStr(
OpenPOWER on IntegriCloud