From 91319402f30018c1ba66f9c6c8f3908a5e2bc5b5 Mon Sep 17 00:00:00 2001 From: Thibaut Gautier Date: Sun, 17 Jan 2021 13:12:18 +0100 Subject: [PATCH 1/3] Fixed encoding not properly working with other packet reading libraries Injecting a message to byte encoder beforehand would break outbound packets in ViaVersion. This solution is a good fix which won't impact anything. --- .../myles/ViaVersion/bukkit/handlers/BukkitEncodeHandler.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/bukkit/src/main/java/us/myles/ViaVersion/bukkit/handlers/BukkitEncodeHandler.java b/bukkit/src/main/java/us/myles/ViaVersion/bukkit/handlers/BukkitEncodeHandler.java index 06bc19f20..63ee36b6d 100644 --- a/bukkit/src/main/java/us/myles/ViaVersion/bukkit/handlers/BukkitEncodeHandler.java +++ b/bukkit/src/main/java/us/myles/ViaVersion/bukkit/handlers/BukkitEncodeHandler.java @@ -54,8 +54,10 @@ public class BukkitEncodeHandler extends MessageToByteEncoder implements ViaHand throw (Error) e.getCause(); } } + + } else { + bytebuf.clear().writeBytes((ByteBuf) o); } - transform(bytebuf); } From 6941b48038125d1a37196b0fe1c2e8a7540452f6 Mon Sep 17 00:00:00 2001 From: creeper123123321 Date: Sat, 6 Feb 2021 10:21:34 -0300 Subject: [PATCH 2/3] fixed pending #2291 changes --- .../myles/ViaVersion/bukkit/handlers/BukkitEncodeHandler.java | 2 +- .../myles/ViaVersion/sponge/handlers/SpongeEncodeHandler.java | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/bukkit/src/main/java/us/myles/ViaVersion/bukkit/handlers/BukkitEncodeHandler.java b/bukkit/src/main/java/us/myles/ViaVersion/bukkit/handlers/BukkitEncodeHandler.java index 63ee36b6d..4ab8efb3b 100644 --- a/bukkit/src/main/java/us/myles/ViaVersion/bukkit/handlers/BukkitEncodeHandler.java +++ b/bukkit/src/main/java/us/myles/ViaVersion/bukkit/handlers/BukkitEncodeHandler.java @@ -56,7 +56,7 @@ public class BukkitEncodeHandler extends MessageToByteEncoder implements ViaHand } } else { - bytebuf.clear().writeBytes((ByteBuf) o); + bytebuf.writeBytes((ByteBuf) o); } transform(bytebuf); } diff --git a/sponge/src/main/java/us/myles/ViaVersion/sponge/handlers/SpongeEncodeHandler.java b/sponge/src/main/java/us/myles/ViaVersion/sponge/handlers/SpongeEncodeHandler.java index 6b643081c..ecd85a684 100644 --- a/sponge/src/main/java/us/myles/ViaVersion/sponge/handlers/SpongeEncodeHandler.java +++ b/sponge/src/main/java/us/myles/ViaVersion/sponge/handlers/SpongeEncodeHandler.java @@ -35,8 +35,9 @@ public class SpongeEncodeHandler extends MessageToByteEncoder implements throw (Error) e.getCause(); } } + } else { + bytebuf.write((ByteBuf) o) } - transform(bytebuf); } From 100ae1c6802d88a043538a8e2f75f07d916573c0 Mon Sep 17 00:00:00 2001 From: creeper123123321 <7974274+creeper123123321@users.noreply.github.com> Date: Sat, 6 Feb 2021 11:18:51 -0300 Subject: [PATCH 3/3] Update SpongeEncodeHandler.java --- .../myles/ViaVersion/sponge/handlers/SpongeEncodeHandler.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sponge/src/main/java/us/myles/ViaVersion/sponge/handlers/SpongeEncodeHandler.java b/sponge/src/main/java/us/myles/ViaVersion/sponge/handlers/SpongeEncodeHandler.java index ecd85a684..cc4345775 100644 --- a/sponge/src/main/java/us/myles/ViaVersion/sponge/handlers/SpongeEncodeHandler.java +++ b/sponge/src/main/java/us/myles/ViaVersion/sponge/handlers/SpongeEncodeHandler.java @@ -36,7 +36,7 @@ public class SpongeEncodeHandler extends MessageToByteEncoder implements } } } else { - bytebuf.write((ByteBuf) o) + bytebuf.writeBytes((ByteBuf) o) } transform(bytebuf); }