From cc75f89272f6926aa0a011a3aa9cea30fa1cc40d Mon Sep 17 00:00:00 2001 From: stephengeorgewest Date: Mon, 31 May 2021 08:05:20 -0600 Subject: [PATCH] 3087 GhidraProjectUtils: Don't get entry folder from path if entry is not CPE_SOURCE --- .../ghidraprojectcreator/utils/GhidraProjectUtils.java | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/GhidraBuild/EclipsePlugins/GhidraDev/GhidraDevPlugin/src/main/java/ghidradev/ghidraprojectcreator/utils/GhidraProjectUtils.java b/GhidraBuild/EclipsePlugins/GhidraDev/GhidraDevPlugin/src/main/java/ghidradev/ghidraprojectcreator/utils/GhidraProjectUtils.java index 61d659bf92..3085a35f0c 100644 --- a/GhidraBuild/EclipsePlugins/GhidraDev/GhidraDevPlugin/src/main/java/ghidradev/ghidraprojectcreator/utils/GhidraProjectUtils.java +++ b/GhidraBuild/EclipsePlugins/GhidraDev/GhidraDevPlugin/src/main/java/ghidradev/ghidraprojectcreator/utils/GhidraProjectUtils.java @@ -388,9 +388,11 @@ public class GhidraProjectUtils { // If the project is linked to an old Ghidra, keep the list of source folders that are // linked to the Ghidra installation (after updating their paths to point to the new // Ghidra installation). - IFolder entryFolder = - ResourcesPlugin.getWorkspace().getRoot().getFolder(entry.getPath()); - if (entry.getEntryKind() == IClasspathEntry.CPE_SOURCE && entryFolder.isLinked() && + IFolder entryFolder; + if (entry.getEntryKind() == IClasspathEntry.CPE_SOURCE) { + entryFolder = ResourcesPlugin.getWorkspace().getRoot().getFolder(entry.getPath()); + } + if (entryFolder != null && entryFolder.isLinked() && oldGhidraInstallPath != null && oldGhidraInstallPath.isPrefixOf(entryFolder.getLocation())) { String origPath = entryFolder.getLocation().toString();