Tigthen up access to getVersion - should help with some disconnects. Great spot by @thinkofdeath
Dieser Commit ist enthalten in:
Ursprung
4976381ad8
Commit
4755809a62
@ -1,4 +1,4 @@
|
|||||||
From a075d1294c4170b06370a4ffdbc9aa912ff16640 Mon Sep 17 00:00:00 2001
|
From 01dd91c59517cae31f9e755b93e87ac8893dfa6d Mon Sep 17 00:00:00 2001
|
||||||
From: md_5 <git@md-5.net>
|
From: md_5 <git@md-5.net>
|
||||||
Date: Sat, 12 Apr 2014 15:11:15 +1000
|
Date: Sat, 12 Apr 2014 15:11:15 +1000
|
||||||
Subject: [PATCH] Old / New Version Support.
|
Subject: [PATCH] Old / New Version Support.
|
||||||
@ -28,7 +28,7 @@ index c738ab5..ec44fe3 100644
|
|||||||
this.b.handle(new PacketLoginOutDisconnect(chatcomponenttext), new GenericFutureListener[0]);
|
this.b.handle(new PacketLoginOutDisconnect(chatcomponenttext), new GenericFutureListener[0]);
|
||||||
this.b.close(chatcomponenttext);
|
this.b.close(chatcomponenttext);
|
||||||
diff --git a/src/main/java/net/minecraft/server/NetworkManager.java b/src/main/java/net/minecraft/server/NetworkManager.java
|
diff --git a/src/main/java/net/minecraft/server/NetworkManager.java b/src/main/java/net/minecraft/server/NetworkManager.java
|
||||||
index 6789ca8..7eaf694 100644
|
index 6789ca8..9842440 100644
|
||||||
--- a/src/main/java/net/minecraft/server/NetworkManager.java
|
--- a/src/main/java/net/minecraft/server/NetworkManager.java
|
||||||
+++ b/src/main/java/net/minecraft/server/NetworkManager.java
|
+++ b/src/main/java/net/minecraft/server/NetworkManager.java
|
||||||
@@ -42,6 +42,19 @@ public class NetworkManager extends SimpleChannelInboundHandler {
|
@@ -42,6 +42,19 @@ public class NetworkManager extends SimpleChannelInboundHandler {
|
||||||
@ -38,7 +38,7 @@ index 6789ca8..7eaf694 100644
|
|||||||
+ // Spigot Start
|
+ // Spigot Start
|
||||||
+ public static final AttributeKey<Integer> protocolVersion = new AttributeKey<Integer>("protocol_version");
|
+ public static final AttributeKey<Integer> protocolVersion = new AttributeKey<Integer>("protocol_version");
|
||||||
+ public static final int CURRENT_VERSION = 5;
|
+ public static final int CURRENT_VERSION = 5;
|
||||||
+ public static int getVersion(net.minecraft.util.io.netty.util.AttributeMap attr)
|
+ public static int getVersion(Channel attr)
|
||||||
+ {
|
+ {
|
||||||
+ Integer ver = attr.attr( protocolVersion ).get();
|
+ Integer ver = attr.attr( protocolVersion ).get();
|
||||||
+ return ( ver != null ) ? ver : CURRENT_VERSION;
|
+ return ( ver != null ) ? ver : CURRENT_VERSION;
|
||||||
@ -78,7 +78,7 @@ index f6f870f..855e85e 100644
|
|||||||
return (i & -128) == 0 ? 1 : ((i & -16384) == 0 ? 2 : ((i & -2097152) == 0 ? 3 : ((i & -268435456) == 0 ? 4 : 5)));
|
return (i & -128) == 0 ? 1 : ((i & -16384) == 0 ? 2 : ((i & -2097152) == 0 ? 3 : ((i & -268435456) == 0 ? 4 : 5)));
|
||||||
diff --git a/src/main/java/net/minecraft/server/PacketEncoder.java b/src/main/java/net/minecraft/server/PacketEncoder.java
|
diff --git a/src/main/java/net/minecraft/server/PacketEncoder.java b/src/main/java/net/minecraft/server/PacketEncoder.java
|
||||||
new file mode 100644
|
new file mode 100644
|
||||||
index 0000000..011a9aa
|
index 0000000..7994daa
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ b/src/main/java/net/minecraft/server/PacketEncoder.java
|
+++ b/src/main/java/net/minecraft/server/PacketEncoder.java
|
||||||
@@ -0,0 +1,45 @@
|
@@ -0,0 +1,45 @@
|
||||||
@ -115,7 +115,7 @@ index 0000000..011a9aa
|
|||||||
+ if (integer == null) {
|
+ if (integer == null) {
|
||||||
+ throw new IOException("Can\'t serialize unregistered packet");
|
+ throw new IOException("Can\'t serialize unregistered packet");
|
||||||
+ } else {
|
+ } else {
|
||||||
+ PacketDataSerializer packetdataserializer = new PacketDataSerializer(bytebuf, NetworkManager.getVersion(channelhandlercontext)); // Spigot
|
+ PacketDataSerializer packetdataserializer = new PacketDataSerializer(bytebuf, NetworkManager.getVersion(channelhandlercontext.channel())); // Spigot
|
||||||
+
|
+
|
||||||
+ packetdataserializer.b(integer.intValue());
|
+ packetdataserializer.b(integer.intValue());
|
||||||
+ packet.b(packetdataserializer);
|
+ packet.b(packetdataserializer);
|
||||||
|
In neuem Issue referenzieren
Einen Benutzer sperren