From 62f0b621d69be3c02492d8ae049f7034a18cca2e Mon Sep 17 00:00:00 2001 From: roblabla Date: Thu, 15 Aug 2024 14:36:07 +0200 Subject: [PATCH] Fix wrong namespaces when using XML imports --- .../java/ghidra/app/util/xml/SymbolTableXmlMgr.java | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/Ghidra/Features/Base/src/main/java/ghidra/app/util/xml/SymbolTableXmlMgr.java b/Ghidra/Features/Base/src/main/java/ghidra/app/util/xml/SymbolTableXmlMgr.java index f7daf9ffcea..b6271f6ba24 100644 --- a/Ghidra/Features/Base/src/main/java/ghidra/app/util/xml/SymbolTableXmlMgr.java +++ b/Ghidra/Features/Base/src/main/java/ghidra/app/util/xml/SymbolTableXmlMgr.java @@ -197,7 +197,7 @@ else if (passNumber == 2) { String addrStr = element.getAttribute("ADDRESS"); String namespace = element.getAttribute("NAMESPACE"); if (namespace != null && namespace.endsWith("::")) { - namespace = namespace.substring(namespace.length() - 2); + namespace = namespace.substring(0, namespace.length() - 2); } String primary = element.getAttribute("PRIMARY"); String sourceTypeString = element.getAttribute("SOURCE_TYPE"); @@ -233,13 +233,8 @@ else if (localNamespace != null && scope = localNamespace; } else if (namespace != null && namespace.length() != 0) { - if (program.getGlobalNamespace().equals(localNamespace)) { - scope = NamespaceUtils.createNamespaceHierarchy(namespace, - program.getGlobalNamespace(), program, sourceType); - } - else { - name = namespace + name; - } + scope = NamespaceUtils.createNamespaceHierarchy(namespace, + program.getGlobalNamespace(), program, sourceType); } Symbol s = symbolTable.getPrimarySymbol(addr);