aboutsummaryrefslogtreecommitdiff
path: root/src/main/java
diff options
context:
space:
mode:
authormodmuss50 <modmuss50@gmail.com>2021-01-21 20:09:48 +0000
committermodmuss50 <modmuss50@gmail.com>2021-01-21 20:09:48 +0000
commitd91b722c355495ec5d29883e6764fa4ede264cc3 (patch)
tree7649f05626f97a1a296b10de2cd1b905e3e41585 /src/main/java
parent4a30993da750db7c2462d21dceb1e6132a21f46e (diff)
downloadarchitectury-loom-d91b722c355495ec5d29883e6764fa4ede264cc3.tar.gz
architectury-loom-d91b722c355495ec5d29883e6764fa4ede264cc3.tar.bz2
architectury-loom-d91b722c355495ec5d29883e6764fa4ede264cc3.zip
Another attempt at fixing issues with fernflower's classpath
Diffstat (limited to 'src/main/java')
-rw-r--r--src/main/java/net/fabricmc/loom/decompilers/fernflower/AbstractFernFlowerDecompiler.java2
-rw-r--r--src/main/java/net/fabricmc/loom/decompilers/fernflower/ForkingJavaExec.java13
2 files changed, 7 insertions, 8 deletions
diff --git a/src/main/java/net/fabricmc/loom/decompilers/fernflower/AbstractFernFlowerDecompiler.java b/src/main/java/net/fabricmc/loom/decompilers/fernflower/AbstractFernFlowerDecompiler.java
index 61dbaf07..ecc13866 100644
--- a/src/main/java/net/fabricmc/loom/decompilers/fernflower/AbstractFernFlowerDecompiler.java
+++ b/src/main/java/net/fabricmc/loom/decompilers/fernflower/AbstractFernFlowerDecompiler.java
@@ -100,7 +100,7 @@ public abstract class AbstractFernFlowerDecompiler implements LoomDecompiler {
progressGroup.started();
ExecResult result = ForkingJavaExec.javaexec(
- project.getRootProject().getPlugins().hasPlugin("fabric-loom") ? project.getRootProject() : project,
+ project,
spec -> {
spec.setMain(fernFlowerExecutor().getName());
spec.jvmArgs("-Xms200m", "-Xmx3G");
diff --git a/src/main/java/net/fabricmc/loom/decompilers/fernflower/ForkingJavaExec.java b/src/main/java/net/fabricmc/loom/decompilers/fernflower/ForkingJavaExec.java
index 4c0e21ad..f7e771d3 100644
--- a/src/main/java/net/fabricmc/loom/decompilers/fernflower/ForkingJavaExec.java
+++ b/src/main/java/net/fabricmc/loom/decompilers/fernflower/ForkingJavaExec.java
@@ -47,15 +47,14 @@ public class ForkingJavaExec {
});
}
- private static Set<Configuration> getForkedFernflowerClasspath(Project project) {
+ private static Configuration[] getForkedFernflowerClasspath(Project project) {
Set<Configuration> allConfigurations = new HashSet<>();
- Project p = project;
+ allConfigurations.addAll(project.getBuildscript().getConfigurations());
- do {
- allConfigurations.addAll(p.getBuildscript().getConfigurations());
- p = p.getRootProject();
- } while (p != p.getRootProject());
+ if (project.getRootProject() != project) {
+ allConfigurations.addAll(project.getRootProject().getBuildscript().getConfigurations());
+ }
- return allConfigurations;
+ return allConfigurations.toArray(new Configuration[0]);
}
}