mirror of
https://github.com/PaperMC/Paper.git
synced 2024-12-02 04:56:50 +01:00
Don't pass vanilla plugin channels to plugins. Fixes BUKKIT-2638
Vanilla has its own handlers for plugin channel messages for things like texture packs, books, and anvils. When vanilla handles one of these messages we should not also pass it to plugins because they will be duplicating work and potentially running in to situations our plugin system isn't setup to handle. This is how 1.3.2 worked but was lost in the 1.4.2 update.
This commit is contained in:
parent
60819c6693
commit
5469311a36
1 changed files with 23 additions and 24 deletions
|
@ -1509,31 +1509,30 @@ public class NetServerHandler extends NetHandler {
|
|||
containeranvil.a("");
|
||||
}
|
||||
}
|
||||
// CraftBukkit start
|
||||
else if (packet250custompayload.tag.equals("REGISTER")) {
|
||||
try {
|
||||
String channels = new String(packet250custompayload.data, "UTF8");
|
||||
for (String channel : channels.split("\0")) {
|
||||
getPlayer().addChannel(channel);
|
||||
}
|
||||
} catch (UnsupportedEncodingException ex) {
|
||||
Logger.getLogger(NetServerHandler.class.getName()).log(Level.SEVERE, "Could not parse REGISTER payload in plugin message packet", ex);
|
||||
}
|
||||
} else if (packet250custompayload.tag.equals("UNREGISTER")) {
|
||||
try {
|
||||
String channels = new String(packet250custompayload.data, "UTF8");
|
||||
for (String channel : channels.split("\0")) {
|
||||
getPlayer().removeChannel(channel);
|
||||
}
|
||||
} catch (UnsupportedEncodingException ex) {
|
||||
Logger.getLogger(NetServerHandler.class.getName()).log(Level.SEVERE, "Could not parse UNREGISTER payload in plugin message packet", ex);
|
||||
}
|
||||
} else {
|
||||
server.getMessenger().dispatchIncomingMessage(player.getBukkitEntity(), packet250custompayload.tag, packet250custompayload.data);
|
||||
}
|
||||
// CraftBukkit end
|
||||
}
|
||||
}
|
||||
|
||||
// CraftBukkit start
|
||||
if (packet250custompayload.tag.equals("REGISTER")) {
|
||||
try {
|
||||
String channels = new String(packet250custompayload.data, "UTF8");
|
||||
for (String channel : channels.split("\0")) {
|
||||
getPlayer().addChannel(channel);
|
||||
}
|
||||
} catch (UnsupportedEncodingException ex) {
|
||||
Logger.getLogger(NetServerHandler.class.getName()).log(Level.SEVERE, "Could not parse REGISTER payload in plugin message packet", ex);
|
||||
}
|
||||
} else if (packet250custompayload.tag.equals("UNREGISTER")) {
|
||||
try {
|
||||
String channels = new String(packet250custompayload.data, "UTF8");
|
||||
for (String channel : channels.split("\0")) {
|
||||
getPlayer().removeChannel(channel);
|
||||
}
|
||||
} catch (UnsupportedEncodingException ex) {
|
||||
Logger.getLogger(NetServerHandler.class.getName()).log(Level.SEVERE, "Could not parse UNREGISTER payload in plugin message packet", ex);
|
||||
}
|
||||
} else {
|
||||
server.getMessenger().dispatchIncomingMessage(player.getBukkitEntity(), packet250custompayload.tag, packet250custompayload.data);
|
||||
}
|
||||
// CraftBukkit end
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue