From ab7fbd3f6eeb9d8a6642d14f5b60b76fe6c48714 Mon Sep 17 00:00:00 2001 From: zaaarf Date: Mon, 27 Mar 2023 20:12:36 +0200 Subject: [PATCH] fix: broken composition of fully qualified name in TypeProxy --- src/main/java/ftbsc/lll/proxies/QualifiableProxy.java | 8 ++++---- src/main/java/ftbsc/lll/proxies/impl/TypeProxy.java | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/main/java/ftbsc/lll/proxies/QualifiableProxy.java b/src/main/java/ftbsc/lll/proxies/QualifiableProxy.java index d245124..91ebaa1 100644 --- a/src/main/java/ftbsc/lll/proxies/QualifiableProxy.java +++ b/src/main/java/ftbsc/lll/proxies/QualifiableProxy.java @@ -37,10 +37,10 @@ public abstract class QualifiableProxy extends AbstractProxy { * @return the parent, or null if the parent was the root element */ protected static String extractParentFromFQN(String fqn) { - String lastSeparator = fqn.contains("$") ? "\\$" : "\\."; - String[] split = fqn.split(lastSeparator); - if(split.length == 1) return null; - return fqn.substring(0, split[split.length - 1].length() - 1); + String lastSeparator = fqn.contains("$") ? "$" : "."; + int pos = fqn.lastIndexOf(lastSeparator); + if(pos == -1) return null; + return fqn.substring(0, pos); } /** diff --git a/src/main/java/ftbsc/lll/proxies/impl/TypeProxy.java b/src/main/java/ftbsc/lll/proxies/impl/TypeProxy.java index 5782609..8001f06 100644 --- a/src/main/java/ftbsc/lll/proxies/impl/TypeProxy.java +++ b/src/main/java/ftbsc/lll/proxies/impl/TypeProxy.java @@ -29,7 +29,7 @@ public class TypeProxy extends QualifiableProxy { * @param primitive whether the proxy is a primitive */ protected TypeProxy(String name, String descriptor, int modifiers, String parent, boolean primitive) { - super(descriptor, modifiers, PackageProxy.from(parent), String.format("%s.%s", name, parent), ProxyType.TYPE); + super(descriptor, modifiers, PackageProxy.from(parent), String.format("%s.%s", parent, name), ProxyType.TYPE); this.primitive = primitive; }