make tests pass

This commit is contained in:
Jake Potrebic
2023-03-14 16:29:38 -07:00
parent 8b4edb6f19
commit 62d13109b7
7 changed files with 42 additions and 53 deletions

View File

@@ -42,27 +42,3 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
for(int i = 0; i < bs.length; ++i) {
if (!byteBuf.isReadable()) {
diff --git a/src/main/java/net/minecraft/network/protocol/PacketUtils.java b/src/main/java/net/minecraft/network/protocol/PacketUtils.java
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
--- a/src/main/java/net/minecraft/network/protocol/PacketUtils.java
+++ b/src/main/java/net/minecraft/network/protocol/PacketUtils.java
@@ -0,0 +0,0 @@ public class PacketUtils {
try (co.aikar.timings.Timing ignored = timing.startTiming()) { // Paper - timings
packet.handle(listener);
} catch (Exception exception) {
- if (listener.shouldPropagateHandlingExceptions()) {
- throw exception;
+ net.minecraft.network.Connection networkmanager = listener.getConnection();
+ if (networkmanager.getPlayer() != null) {
+ LOGGER.error("Error whilst processing packet {} for {}[{}]", packet, networkmanager.getPlayer().getScoreboardName(), networkmanager.getRemoteAddress(), exception);
+ } else {
+ LOGGER.error("Error whilst processing packet {} for connection from {}", packet, networkmanager.getRemoteAddress(), exception);
}
-
- PacketUtils.LOGGER.error("Failed to handle packet {}, suppressing error", packet, exception);
+ net.minecraft.network.chat.Component error = net.minecraft.network.chat.Component.literal("Packet processing error");
+ networkmanager.send(new net.minecraft.network.protocol.game.ClientboundDisconnectPacket(error), net.minecraft.network.PacketSendListener.thenRun(() -> networkmanager.disconnect(error)));
+ networkmanager.setReadOnly();
}
} else {
PacketUtils.LOGGER.debug("Ignoring packet due to disconnection: {}", packet);