From 69fb466b0a261fce8ccdce3d922125e7f38921f7 Mon Sep 17 00:00:00 2001
From: Ryan Kurtz
Date: Fri, 15 Sep 2023 09:39:07 -0400
Subject: [PATCH] GP-3710: GhidraDev no longer allows selecting Ghidra source
repos as a Ghidra installation
---
.../GhidraDevPlugin/.launch/GhidraDev.launch | 29 +++++++++++++------
.../GhidraDevPlugin/GhidraDev_README.html | 15 ++++++++--
.../GhidraProjectCreatorPreferencePage.java | 3 ++
3 files changed, 35 insertions(+), 12 deletions(-)
diff --git a/GhidraBuild/EclipsePlugins/GhidraDev/GhidraDevPlugin/.launch/GhidraDev.launch b/GhidraBuild/EclipsePlugins/GhidraDev/GhidraDevPlugin/.launch/GhidraDev.launch
index fdc48dd8fa..7c584addef 100644
--- a/GhidraBuild/EclipsePlugins/GhidraDev/GhidraDevPlugin/.launch/GhidraDev.launch
+++ b/GhidraBuild/EclipsePlugins/GhidraDev/GhidraDevPlugin/.launch/GhidraDev.launch
@@ -163,36 +163,39 @@
+
+
-
-
+
+
+
+
-
+
+
-
-
+
-
-
+
@@ -321,7 +324,10 @@
+
+
+
@@ -374,7 +380,14 @@
+
+
+
+
+
+
+
@@ -407,14 +420,12 @@
-
-
diff --git a/GhidraBuild/EclipsePlugins/GhidraDev/GhidraDevPlugin/GhidraDev_README.html b/GhidraBuild/EclipsePlugins/GhidraDev/GhidraDevPlugin/GhidraDev_README.html
index 22b1755ea6..2a49d30da3 100644
--- a/GhidraBuild/EclipsePlugins/GhidraDev/GhidraDevPlugin/GhidraDev_README.html
+++ b/GhidraBuild/EclipsePlugins/GhidraDev/GhidraDevPlugin/GhidraDev_README.html
@@ -53,9 +53,18 @@ change with future releases.
Change History
-3.0.1: Exporting a Ghidra Module Extension produces an intermediate build
-directory within the project. This build directory now gets automatically cleaned up to avoid
-Ghidra runtime/debugging issues.
+3.0.1:
+
+ -
+ Exporting a Ghidra Module Extension produces an intermediate build directory within the
+ project. This build directory now gets automatically cleaned up to avoid Ghidra
+ runtime/debugging issues.
+
+ -
+ GhidraDev now prevents unsupported Ghidra source repositories from being added as a Ghidra
+ installations.
+
+
3.0.0:
-
diff --git a/GhidraBuild/EclipsePlugins/GhidraDev/GhidraDevPlugin/src/main/java/ghidradev/ghidraprojectcreator/preferences/GhidraProjectCreatorPreferencePage.java b/GhidraBuild/EclipsePlugins/GhidraDev/GhidraDevPlugin/src/main/java/ghidradev/ghidraprojectcreator/preferences/GhidraProjectCreatorPreferencePage.java
index b0cedb61da..9173760272 100644
--- a/GhidraBuild/EclipsePlugins/GhidraDev/GhidraDevPlugin/src/main/java/ghidradev/ghidraprojectcreator/preferences/GhidraProjectCreatorPreferencePage.java
+++ b/GhidraBuild/EclipsePlugins/GhidraDev/GhidraDevPlugin/src/main/java/ghidradev/ghidraprojectcreator/preferences/GhidraProjectCreatorPreferencePage.java
@@ -212,6 +212,9 @@ implements IWorkbenchPreferencePage {
catch (IOException e) {
throw new IOException("Not a valid Ghidra installation.");
}
+ if (new File(ghidraInstallDir, "certification.local.manifest").isFile()) {
+ throw new IOException("Ghidra source repositories are not supported.");
+ }
ApplicationProperties applicationProperties = layout.getApplicationProperties();
ApplicationVersion version;
try {