diff --git a/lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp b/lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp --- a/lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp +++ b/lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp @@ -4114,16 +4114,15 @@ switch (n_type) { case N_INDR: { const char *reexport_name_cstr = strtab_data.PeekCStr(nlist.n_value); - if (reexport_name_cstr && reexport_name_cstr[0]) { + if (reexport_name_cstr && reexport_name_cstr[0] && symbol_name) { type = eSymbolTypeReExported; ConstString reexport_name(reexport_name_cstr + ((reexport_name_cstr[0] == '_') ? 1 : 0)); sym[sym_idx].SetReExportedSymbolName(reexport_name); set_value = false; reexport_shlib_needs_fixup[sym_idx] = reexport_name; - indirect_symbol_names.insert(ConstString( - symbol_name + - ((symbol_name && (symbol_name[0] == '_')) ? 1 : 0))); + indirect_symbol_names.insert( + ConstString(symbol_name + ((symbol_name[0] == '_') ? 1 : 0))); } else type = eSymbolTypeUndefined; } break; @@ -6898,10 +6897,9 @@ } uint32_t imgcount = m_data.GetU32(&offset); uint64_t entries_fileoff = m_data.GetU64(&offset); - /* leaving the following dead code as comments for spec documentation - offset += 4; // uint32_t entries_size; - offset += 4; // uint32_t unused; - */ + // 'entries_size' is not used, nor is the 'unused' entry. + // offset += 4; // uint32_t entries_size; + // offset += 4; // uint32_t unused; offset = entries_fileoff; for (uint32_t i = 0; i < imgcount; i++) {