mirror of
https://github.com/NationalSecurityAgency/ghidra.git
synced 2026-09-28 17:11:11 -09:00
Merge remote-tracking branch
'origin/GP-7265_ryanmkurtz_script-error-output' into patch (Closes #9551)
This commit is contained in:
@@ -838,11 +838,12 @@ public class GhidraSourceBundle extends GhidraBundle {
|
||||
for (Diagnostic<? extends JavaFileObject> diagnostic : diagnostics.getDiagnostics()) {
|
||||
String error = diagnostic.toString() + "\n";
|
||||
writer.write(error);
|
||||
ResourceFileJavaFileObject sourceFileObject =
|
||||
(ResourceFileJavaFileObject) diagnostic.getSource();
|
||||
ResourceFile sourceFile = sourceFileObject.getFile();
|
||||
buildError(sourceFile, error); // remember all errors for this file
|
||||
filesWithErrors.add(sourceFileObject);
|
||||
JavaFileObject obj = diagnostic.getSource();
|
||||
if (obj instanceof ResourceFileJavaFileObject sourceFileObject) {
|
||||
ResourceFile sourceFile = sourceFileObject.getFile();
|
||||
buildError(sourceFile, error); // remember all errors for this file
|
||||
filesWithErrors.add(sourceFileObject);
|
||||
}
|
||||
}
|
||||
for (ResourceFileJavaFileObject sourceFileObject : filesWithErrors) {
|
||||
if (sourceFiles.remove(sourceFileObject)) {
|
||||
|
||||
@@ -911,8 +911,16 @@ public class HeadlessAnalyzer {
|
||||
|
||||
// GhidraScriptProvider case
|
||||
GhidraScriptProvider provider = GhidraScriptUtil.getProvider(currScriptFile);
|
||||
PrintWriter errWriter = new PrintWriter(System.err);
|
||||
currScript = provider.getScriptInstance(currScriptFile, errWriter);
|
||||
StringWriter stringWriter = new StringWriter();
|
||||
PrintWriter errorWriter = new PrintWriter(stringWriter);
|
||||
try {
|
||||
currScript = provider.getScriptInstance(currScriptFile, errorWriter);
|
||||
}
|
||||
catch (GhidraScriptLoadException e) {
|
||||
errorWriter.flush();
|
||||
Msg.error(this, stringWriter.toString());
|
||||
throw e;
|
||||
}
|
||||
currScript.setScriptArgs(scriptArgs);
|
||||
|
||||
if (options.propertiesFilePaths.size() > 0) {
|
||||
|
||||
Reference in New Issue
Block a user