Skip to content

Commit 3103d02

Browse files
committed
fix: handle null when dyn sym ELF section is not found
1 parent fba5d19 commit 3103d02

1 file changed

Lines changed: 9 additions & 1 deletion

File tree

  • src/main/java/org/ajsmith/jadx/plugins/nativelibraries/components

src/main/java/org/ajsmith/jadx/plugins/nativelibraries/components/NativeRoot.java

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
import jadx.api.plugins.gui.JadxGuiContext;
77
import net.fornwall.jelf.ElfFile;
88
import net.fornwall.jelf.ElfSymbol;
9+
import net.fornwall.jelf.ElfSymbolTableSection;
910
import org.jetbrains.annotations.NotNull;
1011
import org.jetbrains.annotations.Nullable;
1112
import org.slf4j.Logger;
@@ -48,7 +49,14 @@ public void loadFromResource(ResourceFile resource) {
4849

4950
// Parse symbols to find exported methods
5051
ElfFile elf = ElfFile.from(bytes);
51-
for (ElfSymbol symbol : elf.getDynamicSymbolTableSection().symbols) {
52+
53+
ElfSymbolTableSection dynSymSection = elf.getDynamicSymbolTableSection();
54+
if (dynSymSection == null) {
55+
LOG.debug("No dynamic symbol table section was found");
56+
return;
57+
}
58+
59+
for (ElfSymbol symbol : dynSymSection.symbols) {
5260
String name = symbol.getName();
5361
if (!NativeMethod.isJavaMethod(name)) continue;
5462

0 commit comments

Comments
 (0)