aboutsummaryrefslogtreecommitdiff
path: root/src/main/java
diff options
context:
space:
mode:
authormodmuss50 <modmuss50@gmail.com>2021-01-21 20:30:08 +0000
committermodmuss50 <modmuss50@gmail.com>2021-01-21 20:30:08 +0000
commit34a9d2316c5672210004b97316916e7ac02bc5d3 (patch)
tree8751f43aaf8a7e9387540d3c13a97627850cd166 /src/main/java
parentd91b722c355495ec5d29883e6764fa4ede264cc3 (diff)
downloadarchitectury-loom-34a9d2316c5672210004b97316916e7ac02bc5d3.tar.gz
architectury-loom-34a9d2316c5672210004b97316916e7ac02bc5d3.tar.bz2
architectury-loom-34a9d2316c5672210004b97316916e7ac02bc5d3.zip
Improve error handling around access widener remapping. Closes #311
Diffstat (limited to 'src/main/java')
-rw-r--r--src/main/java/net/fabricmc/loom/configuration/accesswidener/AccessWidenerJarProcessor.java7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/main/java/net/fabricmc/loom/configuration/accesswidener/AccessWidenerJarProcessor.java b/src/main/java/net/fabricmc/loom/configuration/accesswidener/AccessWidenerJarProcessor.java
index 64241eaf..936e6b7a 100644
--- a/src/main/java/net/fabricmc/loom/configuration/accesswidener/AccessWidenerJarProcessor.java
+++ b/src/main/java/net/fabricmc/loom/configuration/accesswidener/AccessWidenerJarProcessor.java
@@ -32,6 +32,7 @@ import java.io.StringWriter;
import java.nio.charset.StandardCharsets;
import java.nio.file.Path;
import java.util.Arrays;
+import java.util.List;
import java.util.Set;
import java.util.zip.ZipEntry;
@@ -87,6 +88,12 @@ public class AccessWidenerJarProcessor implements JarProcessor {
//Remap accessWidener if its not named, allows for AE's to be written in intermediary
if (!accessWidener.getNamespace().equals("named")) {
try {
+ List<String> validNamespaces = loomGradleExtension.getMappingsProvider().getMappings().getMetadata().getNamespaces();
+
+ if (!validNamespaces.contains(accessWidener.getNamespace())) {
+ throw new UnsupportedOperationException(String.format("Access Widener namespace '%s' is not a valid namespace, it must be one of: '%s'", accessWidener.getNamespace(), String.join(", ", validNamespaces)));
+ }
+
TinyRemapper tinyRemapper = loomGradleExtension.getMinecraftMappedProvider().getTinyRemapper("official", "named");
tinyRemapper.readClassPath(loomGradleExtension.getMinecraftMappedProvider().getRemapClasspath());