diff --git a/ddprof-lib/src/main/cpp/symbols_linux.cpp b/ddprof-lib/src/main/cpp/symbols_linux.cpp index a76969b7..3cc71160 100644 --- a/ddprof-lib/src/main/cpp/symbols_linux.cpp +++ b/ddprof-lib/src/main/cpp/symbols_linux.cpp @@ -353,14 +353,11 @@ void ElfParser::loadSymbolTable(const char *symbols, size_t total_size, symbols += ent_size) { ElfSymbol *sym = (ElfSymbol *)symbols; if (sym->st_name != 0 && sym->st_value != 0) { - // sanity check the offsets not to exceed the file size - if (_length == 0 || (sym->st_name < _length && sym->st_value < _length)) { - // Skip special AArch64 mapping symbols: $x and $d - if (sym->st_size != 0 || sym->st_info != 0 || - strings[sym->st_name] != '$') { - _cc->add(_base + sym->st_value, (int)sym->st_size, - strings + sym->st_name); - } + // Skip special AArch64 mapping symbols: $x and $d + if (sym->st_size != 0 || sym->st_info != 0 || + strings[sym->st_name] != '$') { + _cc->add(_base + sym->st_value, (int)sym->st_size, + strings + sym->st_name); } } }