diff --git a/Ghidra/Features/Base/src/main/java/ghidra/app/util/opinion/ElfLoader.java b/Ghidra/Features/Base/src/main/java/ghidra/app/util/opinion/ElfLoader.java index e5766b1bab..168e3845d5 100644 --- a/Ghidra/Features/Base/src/main/java/ghidra/app/util/opinion/ElfLoader.java +++ b/Ghidra/Features/Base/src/main/java/ghidra/app/util/opinion/ElfLoader.java @@ -23,8 +23,7 @@ import ghidra.app.util.bin.ByteProvider; import ghidra.app.util.bin.format.elf.ElfException; import ghidra.app.util.bin.format.elf.ElfHeader; import ghidra.app.util.importer.MessageLog; -import ghidra.framework.model.DomainObject; -import ghidra.framework.model.Project; +import ghidra.framework.model.*; import ghidra.framework.options.Options; import ghidra.program.model.lang.Endian; import ghidra.program.model.listing.Program; @@ -158,8 +157,8 @@ public class ElfLoader extends AbstractLibrarySupportLoader { throws CancelledException, IOException { super.postLoadProgramFixups(loadedPrograms, project, options, messageLog, monitor); - try (ExternalSymbolResolver esr = - new ExternalSymbolResolver(project.getProjectData(), monitor)) { + ProjectData projectData = project != null ? project.getProjectData() : null; + try (ExternalSymbolResolver esr = new ExternalSymbolResolver(projectData, monitor)) { for (Loaded loadedProgram : loadedPrograms) { esr.addProgramToFixup( loadedProgram.getProjectFolderPath() + loadedProgram.getName(), diff --git a/Ghidra/Features/Base/src/main/java/ghidra/program/util/ExternalSymbolResolver.java b/Ghidra/Features/Base/src/main/java/ghidra/program/util/ExternalSymbolResolver.java index fca63acbcd..296326cdea 100644 --- a/Ghidra/Features/Base/src/main/java/ghidra/program/util/ExternalSymbolResolver.java +++ b/Ghidra/Features/Base/src/main/java/ghidra/program/util/ExternalSymbolResolver.java @@ -160,7 +160,7 @@ public class ExternalSymbolResolver implements Closeable { */ protected Program getLibraryProgram(String libPath) throws CancelledException { Program result = loadedPrograms.get(libPath); - if (result == null && !problemLibraries.containsKey(libPath)) { + if (result == null && projectData != null && !problemLibraries.containsKey(libPath)) { result = openLibraryFile(projectData.getFile(libPath), libPath); if (result != null) {