From a100622a03e5286e9b52c6ea1d47dc3a489781d7 Mon Sep 17 00:00:00 2001 From: embeddedt <42941056+embeddedt@users.noreply.github.com> Date: Sat, 13 Jan 2024 11:22:29 -0500 Subject: [PATCH] Only apply resource pack speedup on paths starting with assets or data Related: #354 --- .../mixin/perf/resourcepacks/ForgePathPackResourcesMixin.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/forge/src/main/java/org/embeddedt/modernfix/forge/mixin/perf/resourcepacks/ForgePathPackResourcesMixin.java b/forge/src/main/java/org/embeddedt/modernfix/forge/mixin/perf/resourcepacks/ForgePathPackResourcesMixin.java index c79ca8d5..ddb9184c 100644 --- a/forge/src/main/java/org/embeddedt/modernfix/forge/mixin/perf/resourcepacks/ForgePathPackResourcesMixin.java +++ b/forge/src/main/java/org/embeddedt/modernfix/forge/mixin/perf/resourcepacks/ForgePathPackResourcesMixin.java @@ -24,6 +24,7 @@ import java.nio.file.Files; import java.nio.file.LinkOption; import java.nio.file.Path; import java.util.Collection; +import java.util.Objects; import java.util.Set; @Mixin(PathPackResources.class) @@ -87,7 +88,7 @@ public abstract class ForgePathPackResourcesMixin implements ICachingResourcePac @Redirect(method = "getRootResource", at = @At(value = "INVOKE", target = "Ljava/nio/file/Files;exists(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Z")) private boolean useCacheForExistence(Path path, LinkOption[] options, String[] originalPaths) { // the cache only stores things with a namespace and pack type - if(originalPaths.length < 3) + if(originalPaths.length < 3 || (!Objects.equals(originalPaths[0], "assets") && !Objects.equals(originalPaths[0], "data"))) return Files.exists(path, options); else return this.generateResourceCache().hasResource(originalPaths);