From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Phoenix616 Date: Mon, 19 Oct 2020 17:20:53 +0100 Subject: [PATCH] Origami - Fix ProtocolLib issues on Java 15 diff --git a/src/main/java/net/minecraft/network/NetworkManager.java b/src/main/java/net/minecraft/network/NetworkManager.java index b6c0ef0df93f0350fa70e857e06d79ae34d7d4b1..1dce5d3b1e994a060067de4901912dd5a9be7e15 100644 --- a/src/main/java/net/minecraft/network/NetworkManager.java +++ b/src/main/java/net/minecraft/network/NetworkManager.java @@ -435,9 +435,9 @@ public class NetworkManager extends SimpleChannelInboundHandler> { // note: since the type is not dynamic here, we need to actually copy the old executor code // into two branches. On conflict, just re-copy - no changes were made inside the executor code. if (flush) { - choice1 = () -> { + choice1 = new Runnable() { public void run() { // Origami - flatten lambda if (enumprotocol != enumprotocol1) { - this.setProtocol(enumprotocol); + NetworkManager.this.setProtocol(enumprotocol); // Origami - flatten lambda } // Paper start @@ -447,7 +447,7 @@ public class NetworkManager extends SimpleChannelInboundHandler> { } try { // Paper end - ChannelFuture channelfuture1 = (flush) ? this.channel.writeAndFlush(packet) : this.channel.write(packet); // Tuinity - add flush parameter + ChannelFuture channelfuture1 = (flush) ? NetworkManager.this.channel.writeAndFlush(packet) : NetworkManager.this.channel.write(packet); // Tuinity - add flush parameter // Origami - flatten lambda if (genericfuturelistener != null) { @@ -467,12 +467,12 @@ public class NetworkManager extends SimpleChannelInboundHandler> { packet.onPacketDispatchFinish(player, null); } // Paper end - }; + }}; // Origami - flatten lambda } else { // explicitly declare a variable to make the lambda use the type - choice2 = () -> { + choice2 = new AbstractEventExecutor.LazyRunnable() { public void run() { // Origami - flatten lambda if (enumprotocol != enumprotocol1) { - this.setProtocol(enumprotocol); + NetworkManager.this.setProtocol(enumprotocol); // Origami - flatten lambda } // Paper start @@ -482,7 +482,7 @@ public class NetworkManager extends SimpleChannelInboundHandler> { } try { // Paper end - ChannelFuture channelfuture1 = (flush) ? this.channel.writeAndFlush(packet) : this.channel.write(packet); // Tuinity - add flush parameter + ChannelFuture channelfuture1 = (flush) ? NetworkManager.this.channel.writeAndFlush(packet) : NetworkManager.this.channel.write(packet); // Tuinity - add flush parameter // Origami - flatten lambda if (genericfuturelistener != null) { @@ -502,7 +502,7 @@ public class NetworkManager extends SimpleChannelInboundHandler> { packet.onPacketDispatchFinish(player, null); } // Paper end - }; + }}; // Origami - flatten lambda } this.channel.eventLoop().execute(choice1 != null ? choice1 : choice2); // Tuinity end - optimise packets that are not flushed