CharsetEncoder is not thread safe.

This commit is contained in:
modmuss50
2025-11-09 14:00:42 +00:00
parent 1a70c3703b
commit 739e124f26

View File

@@ -61,7 +61,6 @@ import net.fabricmc.loom.util.Constants;
import net.fabricmc.loom.util.Platform;
public abstract class AbstractRunTask extends JavaExec {
private static final CharsetEncoder ASCII_ENCODER = StandardCharsets.US_ASCII.newEncoder();
private static final Logger LOGGER = LoggerFactory.getLogger(AbstractRunTask.class);
@Inject
@@ -132,8 +131,10 @@ public abstract class AbstractRunTask extends JavaExec {
}
private boolean canPathBeASCIIEncoded() {
return ASCII_ENCODER.canEncode(getProject().getProjectDir().getAbsolutePath())
&& ASCII_ENCODER.canEncode(getProject().getGradle().getGradleUserHomeDir().getAbsolutePath());
CharsetEncoder asciiEncoder = StandardCharsets.US_ASCII.newEncoder();
return asciiEncoder.canEncode(getProject().getProjectDir().getAbsolutePath())
&& asciiEncoder.canEncode(getProject().getGradle().getGradleUserHomeDir().getAbsolutePath());
}
@Override