From af0ea1e7396d922e1cc0f604aa84af8244ba3fd0 Mon Sep 17 00:00:00 2001 From: Ryan Kurtz Date: Thu, 9 Nov 2023 06:30:00 -0500 Subject: [PATCH] GP-3912: Fixing a Mach-O load exception that could happen if a binary referred to itself as a dependent library (Closes #5937) --- .../main/java/ghidra/app/util/opinion/MachoProgramBuilder.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Ghidra/Features/Base/src/main/java/ghidra/app/util/opinion/MachoProgramBuilder.java b/Ghidra/Features/Base/src/main/java/ghidra/app/util/opinion/MachoProgramBuilder.java index a6c033a587..4846878a4a 100644 --- a/Ghidra/Features/Base/src/main/java/ghidra/app/util/opinion/MachoProgramBuilder.java +++ b/Ghidra/Features/Base/src/main/java/ghidra/app/util/opinion/MachoProgramBuilder.java @@ -1196,10 +1196,10 @@ public class MachoProgramBuilder { } if (libraryPath != null) { - libraryPaths.add(libraryPath); int index = libraryPath.lastIndexOf("/"); String libraryName = index != -1 ? libraryPath.substring(index + 1) : libraryPath; if (!libraryName.equals(program.getName())) { + libraryPaths.add(libraryPath); addLibrary(libraryPath); props.setString( ExternalSymbolResolver.getRequiredLibraryProperty(libraryIndex++),