Mirror von
https://github.com/PaperMC/Paper.git
synchronisiert 2024-11-15 12:30:06 +01:00
5599e43ca4
We shouldn't ever be dropping API anyways. Dropped Async Chunk load v1 since its useless now Added scheduler decompile fixes incase we do end up needing them
76 Zeilen
4.8 KiB
Diff
76 Zeilen
4.8 KiB
Diff
From 5b7fa8b79798a56e956c7b5011c3298bc0de2a3c Mon Sep 17 00:00:00 2001
|
|
From: Aikar <aikar@aikar.co>
|
|
Date: Sat, 1 Sep 2018 12:19:19 -0400
|
|
Subject: [PATCH 1/2] scheduler decompile fox
|
|
|
|
---
|
|
.../java/net/minecraft/server/Scheduler.java | 20 +++++++++----------
|
|
1 file changed, 10 insertions(+), 10 deletions(-)
|
|
|
|
diff --git a/src/main/java/net/minecraft/server/Scheduler.java b/src/main/java/net/minecraft/server/Scheduler.java
|
|
index ed155c8b30..1c327c58e7 100644
|
|
--- a/src/main/java/net/minecraft/server/Scheduler.java
|
|
+++ b/src/main/java/net/minecraft/server/Scheduler.java
|
|
@@ -27,8 +27,8 @@ public abstract class Scheduler<K, T extends SchedulerTask<K, T>, R> {
|
|
private final ExecutorService c;
|
|
private final AtomicInteger d = new AtomicInteger(1);
|
|
private final List<CompletableFuture<R>> e = Lists.newArrayList();
|
|
- private CompletableFuture<R> f = CompletableFuture.completedFuture((Object)null);
|
|
- private CompletableFuture<R> g = CompletableFuture.completedFuture((Object)null);
|
|
+ private CompletableFuture<R> f = CompletableFuture.completedFuture(null); // Paper - decompile fix
|
|
+ private CompletableFuture<R> g = CompletableFuture.completedFuture(null); // Paper - decompile fix
|
|
private final Supplier<Map<T, CompletableFuture<R>>> h;
|
|
private final Supplier<Map<T, CompletableFuture<Void>>> i;
|
|
private final T j;
|
|
@@ -121,12 +121,12 @@ public abstract class Scheduler<K, T extends SchedulerTask<K, T>, R> {
|
|
private final K c;
|
|
private final R d;
|
|
|
|
- public a(Object object, Object object1, SchedulerTask schedulertask) {
|
|
+ public a(Object object, Object object1, T schedulertask) { // Paper - decompile fix
|
|
this.b = (Map)Scheduler.this.h.get();
|
|
this.c = (K)object;
|
|
|
|
for(this.d = (R)object1; schedulertask != null; schedulertask = schedulertask.a()) {
|
|
- this.b.put(schedulertask, CompletableFuture.completedFuture(object1));
|
|
+ this.b.put(schedulertask, CompletableFuture.completedFuture((R)object1));// Paper - decompile fix
|
|
}
|
|
|
|
}
|
|
@@ -136,18 +136,18 @@ public abstract class Scheduler<K, T extends SchedulerTask<K, T>, R> {
|
|
}
|
|
|
|
private CompletableFuture<R> a(CompletableFuture<R> completablefuture, T schedulertask) {
|
|
- ConcurrentHashMap concurrenthashmap = new ConcurrentHashMap();
|
|
- return (CompletableFuture)this.b.computeIfAbsent(schedulertask, (var4) -> {
|
|
+ ConcurrentHashMap<K, CompletableFuture<R>> concurrenthashmap = new ConcurrentHashMap(); // Paper - decompile fix
|
|
+ return (CompletableFuture<R>)this.b.computeIfAbsent(schedulertask, (var4) -> { // Paper - decompile fix
|
|
if (schedulertask.a() == null) {
|
|
return CompletableFuture.completedFuture(this.d);
|
|
} else {
|
|
schedulertask.a(this.c, (object, schedulertask2) -> {
|
|
- CompletableFuture completablefuture4 = (CompletableFuture)concurrenthashmap.put(object, Scheduler.this.a(object, Scheduler.this.b(object)).a(completablefuture, schedulertask2));
|
|
+ CompletableFuture<R> completablefuture4 = (CompletableFuture)concurrenthashmap.put(object, Scheduler.this.a(object, Scheduler.this.b(object)).a(completablefuture, schedulertask2)); // Paper - decompile fix
|
|
});
|
|
- CompletableFuture[] acompletablefuture = (CompletableFuture[])Streams.concat(new Stream[]{Stream.of(completablefuture), concurrenthashmap.values().stream()}).toArray((i) -> {
|
|
+ CompletableFuture<R>[] acompletablefuture = (CompletableFuture[])Streams.concat(new Stream[]{Stream.of(completablefuture), concurrenthashmap.values().stream()}).toArray((i) -> { // Paper - decompile fix
|
|
return new CompletableFuture[i];
|
|
});
|
|
- CompletableFuture completablefuture2 = CompletableFuture.allOf(acompletablefuture).thenApplyAsync((var3) -> {
|
|
+ CompletableFuture<R> completablefuture2 = CompletableFuture.allOf(acompletablefuture).thenApplyAsync((var3) -> { // Paper - decompile fix
|
|
return Scheduler.this.a(this.c, schedulertask, Maps.transformValues(concurrenthashmap, (completablefuture3) -> {
|
|
try {
|
|
return completablefuture3.get();
|
|
@@ -156,7 +156,7 @@ public abstract class Scheduler<K, T extends SchedulerTask<K, T>, R> {
|
|
}
|
|
}));
|
|
}, Scheduler.this.c).thenApplyAsync((object) -> {
|
|
- for(Object object1 : concurrenthashmap.keySet()) {
|
|
+ for(K object1 : concurrenthashmap.keySet()) { // Paper - decompile fix
|
|
Scheduler.this.b(object1, Scheduler.this.b(object1));
|
|
}
|
|
|
|
--
|
|
2.18.0
|
|
|