From e5341230890cef158a10f5910f9b26ee15b80bec Mon Sep 17 00:00:00 2001 From: dragonmacher <48328597+dragonmacher@users.noreply.github.com> Date: Tue, 9 Dec 2025 16:13:48 -0500 Subject: [PATCH] Fixed a bug in the tool restoring when using a tool from master in a patch branch --- .../java/ghidra/framework/options/SaveState.java | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/Ghidra/Framework/Generic/src/main/java/ghidra/framework/options/SaveState.java b/Ghidra/Framework/Generic/src/main/java/ghidra/framework/options/SaveState.java index e90e3c28b6..5a81cef8e5 100644 --- a/Ghidra/Framework/Generic/src/main/java/ghidra/framework/options/SaveState.java +++ b/Ghidra/Framework/Generic/src/main/java/ghidra/framework/options/SaveState.java @@ -17,6 +17,7 @@ package ghidra.framework.options; import java.io.File; import java.io.IOException; +import java.util.List; import org.jdom.Element; @@ -119,11 +120,14 @@ public class SaveState extends XmlProperties { String tag = element.getName(); if (tag.equals("SAVE_STATE")) { - Element child = (Element) element.getChildren().get(0); - if (child != null) { - String name = element.getAttributeValue(NAME); - map.put(name, new SaveState(child)); - return; + List children = element.getChildren(); + if (!children.isEmpty()) { + Element child = (Element) children.get(0); + if (child != null) { + String name = element.getAttributeValue(NAME); + map.put(name, new SaveState(child)); + return; + } } } super.processElement(element);