From 4f186c03f5d56fd602afcbeafb4e6de1e6de7d3f Mon Sep 17 00:00:00 2001 From: embeddedt <42941056+embeddedt@users.noreply.github.com> Date: Sun, 16 Jul 2023 19:59:22 -0400 Subject: [PATCH] Filter valid paths using explicit joiner instead of Path.toString to avoid issues on Windows --- .../modernfix/resources/PackResourcesCacheEngine.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/common/src/main/java/org/embeddedt/modernfix/resources/PackResourcesCacheEngine.java b/common/src/main/java/org/embeddedt/modernfix/resources/PackResourcesCacheEngine.java index 20788adf..dc559787 100644 --- a/common/src/main/java/org/embeddedt/modernfix/resources/PackResourcesCacheEngine.java +++ b/common/src/main/java/org/embeddedt/modernfix/resources/PackResourcesCacheEngine.java @@ -1,5 +1,6 @@ package org.embeddedt.modernfix.resources; +import com.google.common.base.Joiner; import com.google.common.base.Stopwatch; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableMap; @@ -28,6 +29,8 @@ import java.util.stream.Stream; * drop. */ public class PackResourcesCacheEngine { + private static final Joiner SLASH_JOINER = Joiner.on('/'); + private final Map> namespacesByType; private final Set containedPaths; private final EnumMap>> resourceListings; @@ -88,7 +91,7 @@ public class PackResourcesCacheEngine { if(path.getFileName() == null || path.getNameCount() == 0) { return false; } - String str = path.toString(); + String str = SLASH_JOINER.join(path); if(str.length() == 0) return false; for(int i = 0; i < str.length(); i++) {