diff --git a/HMCLCore/src/main/java/org/jackhuang/hmcl/util/tree/ArchiveFileTree.java b/HMCLCore/src/main/java/org/jackhuang/hmcl/util/tree/ArchiveFileTree.java index 239b7358a..c69adcd98 100644 --- a/HMCLCore/src/main/java/org/jackhuang/hmcl/util/tree/ArchiveFileTree.java +++ b/HMCLCore/src/main/java/org/jackhuang/hmcl/util/tree/ArchiveFileTree.java @@ -69,11 +69,8 @@ public abstract class ArchiveFileTree implements Clos public @Nullable E getEntry(@NotNull String entryPath) { Dir dir = root; - String fileName; if (entryPath.indexOf('/') < 0) { - fileName = entryPath; - if (fileName.isEmpty()) - return root.getEntry(); + return dir.getFiles().get(entryPath); } else { String[] path = entryPath.split("/"); if (path.length == 0) @@ -88,14 +85,9 @@ public abstract class ArchiveFileTree implements Clos return null; } - fileName = path[path.length - 1]; - E entry = dir.getFiles().get(fileName); - if (entry != null) - return entry; + String fileName = path[path.length - 1]; + return dir.getFiles().get(fileName); } - - Dir subDir = dir.getSubDirs().get(fileName); - return subDir != null ? subDir.getEntry() : null; } protected void addEntry(E entry) throws IOException {