diff --git a/Ghidra/Framework/Utility/src/main/java/ghidra/util/SystemUtilities.java b/Ghidra/Framework/Utility/src/main/java/ghidra/util/SystemUtilities.java index 3eae621cd7..55cb6156e9 100644 --- a/Ghidra/Framework/Utility/src/main/java/ghidra/util/SystemUtilities.java +++ b/Ghidra/Framework/Utility/src/main/java/ghidra/util/SystemUtilities.java @@ -83,13 +83,20 @@ public class SystemUtilities { Class myClass = SystemUtilities.class; ClassLoader loader = myClass.getClassLoader(); if (loader == null) { - // Loaded with the bootstrap class loader...definitely dev mode. - // The Eclipse GhidraDevPlugin does this when it's running from dev mode. - return true; + // Can happen when called from the Eclipse GhidraDev plugin + return false; } String name = myClass.getName().replace('.', '/') + ".class"; - URL url = loader.getResource(name); - return !"jar".equals(url.getProtocol()); + String protocol = loader.getResource(name).getProtocol(); + switch(protocol) { + case "file": // Source repository mode (class files) + return true; + case "jar": // Release mode (jar files) + case "bundleresource": // Eclipse GhidraDev mode + return false; + default: // Unexpected protocol...assume a development mode + return true; + } } /** diff --git a/GhidraBuild/EclipsePlugins/GhidraDev/GhidraDevFeature/feature.xml b/GhidraBuild/EclipsePlugins/GhidraDev/GhidraDevFeature/feature.xml index ead7c00822..0994fef76f 100644 --- a/GhidraBuild/EclipsePlugins/GhidraDev/GhidraDevFeature/feature.xml +++ b/GhidraBuild/EclipsePlugins/GhidraDev/GhidraDevFeature/feature.xml @@ -2,7 +2,7 @@ diff --git a/GhidraBuild/EclipsePlugins/GhidraDev/GhidraDevPlugin/.launch/GhidraDev.launch b/GhidraBuild/EclipsePlugins/GhidraDev/GhidraDevPlugin/.launch/GhidraDev.launch index 6367dfd184..c2baf654b8 100644 --- a/GhidraBuild/EclipsePlugins/GhidraDev/GhidraDevPlugin/.launch/GhidraDev.launch +++ b/GhidraBuild/EclipsePlugins/GhidraDev/GhidraDevPlugin/.launch/GhidraDev.launch @@ -12,6 +12,7 @@ + @@ -22,6 +23,7 @@ + @@ -151,9 +153,248 @@ - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/GhidraBuild/EclipsePlugins/GhidraDev/GhidraDevPlugin/GhidraDev_README.html b/GhidraBuild/EclipsePlugins/GhidraDev/GhidraDevPlugin/GhidraDev_README.html index 58f8f5e16d..58807f439a 100644 --- a/GhidraBuild/EclipsePlugins/GhidraDev/GhidraDevPlugin/GhidraDev_README.html +++ b/GhidraBuild/EclipsePlugins/GhidraDev/GhidraDevPlugin/GhidraDev_README.html @@ -19,7 +19,7 @@

GhidraDev README

GhidraDev provides support for developing and debugging Ghidra scripts and modules in Eclipse.

-

The information provided in this document is effective as of GhidraDev 2.1.1 and is subject to +

The information provided in this document is effective as of GhidraDev 2.1.3 and is subject to change with future releases.

    @@ -53,6 +53,8 @@ change with future releases.

Change History

+

2.1.3: Fixed a bug that prevented Ghidra projects from recognizing extensions +installed in the user's ~/.ghidra/.ghidra_<version>/Extensions directory.

2.1.2: Fixed exception that occurred when creating a new Ghidra scripting project if a ~/ghidra_scripts directory does not exist.

2.1.1: diff --git a/GhidraBuild/EclipsePlugins/GhidraDev/GhidraDevPlugin/META-INF/MANIFEST.MF b/GhidraBuild/EclipsePlugins/GhidraDev/GhidraDevPlugin/META-INF/MANIFEST.MF index 66e449de4a..efb8ab1a23 100644 --- a/GhidraBuild/EclipsePlugins/GhidraDev/GhidraDevPlugin/META-INF/MANIFEST.MF +++ b/GhidraBuild/EclipsePlugins/GhidraDev/GhidraDevPlugin/META-INF/MANIFEST.MF @@ -3,7 +3,7 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: GhidraDev Bundle-SymbolicName: ghidra.ghidradev;singleton:=true -Bundle-Version: 2.1.2.qualifier +Bundle-Version: 2.1.3.qualifier Bundle-Activator: ghidradev.Activator Require-Bundle: org.eclipse.ant.core;bundle-version="3.5.200", org.eclipse.buildship.core;bundle-version="3.0.0",