PaperMC/Spigot-Server-Patches/0548-Fix-MC-197271.patch

52 lines
3 KiB
Diff
Raw Normal View History

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: ishland <ishlandmc@yeah.net>
Date: Sun, 23 Aug 2020 10:57:44 +0200
Subject: [PATCH] Fix MC-197271
This patch only fixes an issue for servers running OpenJ9.
diff --git a/src/main/java/net/minecraft/server/RegistryGeneration.java b/src/main/java/net/minecraft/server/RegistryGeneration.java
index 30db8342893e0af3028fbd8766642407cc109a5d..691f256427825a8e6b3eeaf317da2405954bff1d 100644
--- a/src/main/java/net/minecraft/server/RegistryGeneration.java
+++ b/src/main/java/net/minecraft/server/RegistryGeneration.java
@@ -28,11 +28,11 @@ public class RegistryGeneration {
public static final IRegistry<ProcessorList> g = a(IRegistry.aw, () -> {
return ProcessorLists.b;
});
- public static final IRegistry<WorldGenFeatureDefinedStructurePoolTemplate> h = a(IRegistry.ax, WorldGenFeaturePieces::a);
+ public static final IRegistry<WorldGenFeatureDefinedStructurePoolTemplate> h = a(IRegistry.ax, () -> WorldGenFeaturePieces.a()); // Paper - MC-197271
public static final IRegistry<BiomeBase> WORLDGEN_BIOME = a(IRegistry.ay, () -> {
return BiomeRegistry.a;
});
- public static final IRegistry<GeneratorSettingBase> j = a(IRegistry.ar, GeneratorSettingBase::i);
+ public static final IRegistry<GeneratorSettingBase> j = a(IRegistry.ar, () -> GeneratorSettingBase.i()); // Paper - MC-197271
private static <T> IRegistry<T> a(ResourceKey<? extends IRegistry<T>> resourcekey, Supplier<T> supplier) {
return a(resourcekey, Lifecycle.stable(), supplier);
@@ -46,9 +46,9 @@ public class RegistryGeneration {
MinecraftKey minecraftkey = resourcekey.a();
RegistryGeneration.k.put(minecraftkey, supplier);
- IRegistryWritable<R> iregistrywritable = RegistryGeneration.l;
+ IRegistryWritable<R> iregistrywritable = (IRegistryWritable<R>) RegistryGeneration.l; // Paper - decompile fix
- return (IRegistryWritable) iregistrywritable.a(resourcekey, (Object) r0, lifecycle);
+ return (R) iregistrywritable.a((ResourceKey<R>) resourcekey, r0, lifecycle); // Paper - decompile fix
}
public static <T> T a(IRegistry<? super T> iregistry, String s, T t0) {
@@ -56,11 +56,11 @@ public class RegistryGeneration {
}
public static <V, T extends V> T a(IRegistry<V> iregistry, MinecraftKey minecraftkey, T t0) {
- return ((IRegistryWritable) iregistry).a(ResourceKey.a(iregistry.f(), minecraftkey), t0, Lifecycle.stable());
+ return (T) ((IRegistryWritable) iregistry).a(ResourceKey.a(iregistry.f(), minecraftkey), t0, Lifecycle.stable()); // Paper - decompile fix
}
public static <V, T extends V> T a(IRegistry<V> iregistry, int i, ResourceKey<V> resourcekey, T t0) {
- return ((IRegistryWritable) iregistry).a(i, resourcekey, t0, Lifecycle.stable());
+ return (T) ((IRegistryWritable) iregistry).a(i, resourcekey, t0, Lifecycle.stable()); // Paper - decompile fix
}
public static void a() {}