Fix tabcomplete firing off-main

Also rebuild patches
This commit is contained in:
Spottedleaf 2019-06-02 19:19:44 -07:00 committed by Shane Freeder
parent f210855d4c
commit da0aa69e44
13 changed files with 49 additions and 47 deletions

View File

@ -1,4 +1,4 @@
From 53ad330eb173779d8cd27564a7723dd578b96201 Mon Sep 17 00:00:00 2001
From 251bdf8362b4a8e609b22a157e5da5bce19dd103 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Sun, 26 Nov 2017 13:19:58 -0500
Subject: [PATCH] AsyncTabCompleteEvent
@ -14,7 +14,7 @@ completion, such as offline players.
Also adds isCommand and getLocation to the sync TabCompleteEvent
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
index 43d760bed..49dd552e1 100644
index 22dca3fe68..b0275fc14d 100644
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
@@ -520,10 +520,10 @@ public class PlayerConnection implements PacketListenerPlayIn {
@ -30,7 +30,7 @@ index 43d760bed..49dd552e1 100644
return;
}
// CraftBukkit end
@@ -533,12 +533,35 @@ public class PlayerConnection implements PacketListenerPlayIn {
@@ -533,12 +533,37 @@ public class PlayerConnection implements PacketListenerPlayIn {
stringreader.skip();
}
@ -47,6 +47,7 @@ index 43d760bed..49dd552e1 100644
+ if (!event.isHandled()) {
+ if (!event.isCancelled()) {
+ // Paper end - async tab completion
+ this.minecraftServer.scheduleOnMain(() -> { // Paper - This needs to be on main
+ ParseResults<CommandListenerWrapper> parseresults = this.minecraftServer.getCommandDispatcher().a().parse(stringreader, this.player.getCommandListener());
this.minecraftServer.getCommandDispatcher().a().getCompletionSuggestions(parseresults).thenAccept((suggestions) -> {
@ -55,6 +56,7 @@ index 43d760bed..49dd552e1 100644
- });
+ this.networkManager.sendPacket(new PacketPlayOutTabComplete(packetplayintabcomplete.b(), (Suggestions) suggestions)); // CraftBukkit - decompile error
+ });
+ }); // Paper - This needs to be on main
+ }
+ // Paper start - async tab completion
+ } else if (!completions.isEmpty()) {
@ -70,7 +72,7 @@ index 43d760bed..49dd552e1 100644
@Override
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 8f7fd3490..746d2888d 100644
index 455f52e3ea..5e9e601bf4 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -1662,7 +1662,7 @@ public final class CraftServer implements Server {
@ -83,7 +85,7 @@ index 8f7fd3490..746d2888d 100644
return tabEvent.isCancelled() ? Collections.EMPTY_LIST : tabEvent.getCompletions();
diff --git a/src/main/java/org/bukkit/craftbukkit/command/ConsoleCommandCompleter.java b/src/main/java/org/bukkit/craftbukkit/command/ConsoleCommandCompleter.java
index 5510266fb..a51202ed5 100644
index 5510266fb1..a51202ed53 100644
--- a/src/main/java/org/bukkit/craftbukkit/command/ConsoleCommandCompleter.java
+++ b/src/main/java/org/bukkit/craftbukkit/command/ConsoleCommandCompleter.java
@@ -28,6 +28,39 @@ public class ConsoleCommandCompleter implements Completer {

View File

@ -1,14 +1,14 @@
From dc19b8d93401edf7f52fb67b472291b8d4a2982a Mon Sep 17 00:00:00 2001
From e67ace0e930ce0bb0ed42253c1de21107ba11d4b Mon Sep 17 00:00:00 2001
From: 0x22 <0x22@futureclient.net>
Date: Thu, 26 Apr 2018 04:41:11 -0400
Subject: [PATCH] Fix exploit that allowed colored signs to be created
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
index f959fd3686..491ca7ce58 100644
index b0275fc14d..498483930e 100644
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
@@ -2520,7 +2520,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
@@ -2522,7 +2522,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
String[] lines = new String[4];
for (int i = 0; i < astring.length; ++i) {

View File

@ -1,4 +1,4 @@
From 3c3a5e3209795f207d3ebbd70e967be5c90c5e88 Mon Sep 17 00:00:00 2001
From 8a27d148e5b13149a4fd0dc3779f8e02d01fedab Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Tue, 3 Jul 2018 21:56:23 -0400
Subject: [PATCH] InventoryCloseEvent Reason API
@ -88,10 +88,10 @@ index 607042a41c..30b684b043 100644
this.m();
}
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
index 491ca7ce58..a29a59ebbd 100644
index 498483930e..088873515c 100644
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
@@ -2054,7 +2054,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
@@ -2056,7 +2056,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
PlayerConnectionUtils.ensureMainThread(packetplayinclosewindow, this, this.player.getWorldServer());
if (this.player.isFrozen()) return; // CraftBukkit

View File

@ -1,4 +1,4 @@
From ffcece19a5ab7855cd02b6e60f4e0b638c7ef0f7 Mon Sep 17 00:00:00 2001
From c44aa8d4fc35fbc4d791635d1701fb31cf93ae03 Mon Sep 17 00:00:00 2001
From: Minecrell <minecrell@minecrell.net>
Date: Fri, 13 Jul 2018 14:54:43 +0200
Subject: [PATCH] Refresh player inventory when cancelling
@ -16,10 +16,10 @@ Refresh the player inventory when PlayerInteractEntityEvent is
cancelled to avoid this problem.
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
index a29a59ebbd..b8cd933025 100644
index 088873515c..05dec82386 100644
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
@@ -1968,6 +1968,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
@@ -1970,6 +1970,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
}
if (event.isCancelled()) {

View File

@ -1,4 +1,4 @@
From 7650a917ee76c8944347ae6c41b7a1d541f0dc3d Mon Sep 17 00:00:00 2001
From 2ea78ad20572cc9e93a58f590e9cf01905460e56 Mon Sep 17 00:00:00 2001
From: Gabriele C <sgdc3.mail@gmail.com>
Date: Mon, 22 Oct 2018 17:34:10 +0200
Subject: [PATCH] Add option to prevent players from moving into unloaded
@ -6,7 +6,7 @@ Subject: [PATCH] Add option to prevent players from moving into unloaded
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
index fb44fccc9..ad793ffa3 100644
index fb44fccc92..ad793ffa38 100644
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
@@ -434,4 +434,9 @@ public class PaperWorldConfig {
@ -20,7 +20,7 @@ index fb44fccc9..ad793ffa3 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
index f30fec7eb..ff45290b8 100644
index 0aa1e2a057..ce0e93fffa 100644
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
@@ -347,6 +347,13 @@ public class PlayerConnection implements PacketListenerPlayIn {
@ -37,7 +37,7 @@ index f30fec7eb..ff45290b8 100644
if (d10 - d9 > Math.max(100.0D, Math.pow((double) (org.spigotmc.SpigotConfig.movedTooQuicklyMultiplier * (float) i * speed), 2)) && !this.isExemptPlayer()) {
// CraftBukkit end
PlayerConnection.LOGGER.warn("{} (vehicle of {}) moved too quickly! {},{},{}", entity.getDisplayName().getString(), this.player.getDisplayName().getString(), d6, d7, d8);
@@ -889,9 +896,9 @@ public class PlayerConnection implements PacketListenerPlayIn {
@@ -891,9 +898,9 @@ public class PlayerConnection implements PacketListenerPlayIn {
double d1 = this.player.locY;
double d2 = this.player.locZ;
double d3 = this.player.locY;
@ -49,7 +49,7 @@ index f30fec7eb..ff45290b8 100644
float f = packetplayinflying.a(this.player.yaw);
float f1 = packetplayinflying.b(this.player.pitch);
double d7 = d4 - this.l;
@@ -931,6 +938,13 @@ public class PlayerConnection implements PacketListenerPlayIn {
@@ -933,6 +940,13 @@ public class PlayerConnection implements PacketListenerPlayIn {
speed = player.abilities.walkSpeed * 10f;
}

View File

@ -1,14 +1,14 @@
From a84756c0cc7249d163464d530d8bf99764a8593f Mon Sep 17 00:00:00 2001
From ff53d25d2dab42d5f8ae418732140404848abe4d Mon Sep 17 00:00:00 2001
From: Shane Freeder <theboyetronic@gmail.com>
Date: Sun, 11 Nov 2018 21:01:09 +0000
Subject: [PATCH] Don't allow digging into unloaded chunks
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
index ff45290b8..293e5d819 100644
index ce0e93fffa..b506215b29 100644
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
@@ -1250,6 +1250,11 @@ public class PlayerConnection implements PacketListenerPlayIn {
@@ -1252,6 +1252,11 @@ public class PlayerConnection implements PacketListenerPlayIn {
case START_DESTROY_BLOCK:
case ABORT_DESTROY_BLOCK:
case STOP_DESTROY_BLOCK:

View File

@ -1,4 +1,4 @@
From 36654b61426aecd3fda14002e023730f5c453cd7 Mon Sep 17 00:00:00 2001
From 5897787b256265c9eac41c5164c76fef9f6b29ed Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Fri, 16 Nov 2018 23:08:50 -0500
Subject: [PATCH] Book Size Limits
@ -6,7 +6,7 @@ Subject: [PATCH] Book Size Limits
Puts some limits on the size of books.
diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java
index a79cba50e..e5e41c662 100644
index a79cba50e0..e5e41c6621 100644
--- a/src/main/java/com/destroystokyo/paper/PaperConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java
@@ -375,4 +375,11 @@ public class PaperConfig {
@ -22,7 +22,7 @@ index a79cba50e..e5e41c662 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
index 293e5d819..f68693525 100644
index b506215b29..905db6448c 100644
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
@@ -14,6 +14,7 @@ import java.util.Iterator;
@ -33,7 +33,7 @@ index 293e5d819..f68693525 100644
import org.apache.commons.lang3.StringUtils;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
@@ -784,6 +785,42 @@ public class PlayerConnection implements PacketListenerPlayIn {
@@ -786,6 +787,42 @@ public class PlayerConnection implements PacketListenerPlayIn {
@Override
public void a(PacketPlayInBEdit packetplayinbedit) {

View File

@ -1,4 +1,4 @@
From c1de41cf5f2ec6108306d37dfbf1385081ae2e15 Mon Sep 17 00:00:00 2001
From ec9197283cbd2177f245472cee5cc16931cf91e1 Mon Sep 17 00:00:00 2001
From: Michael Himing <mhiming@gmail.com>
Date: Sun, 16 Dec 2018 13:07:33 +1100
Subject: [PATCH] Fix PlayerEditBookEvent
@ -10,10 +10,10 @@ it impossible to properly cancel the event or modify the book meta
cancelled writing
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
index f68693525..98d1138cb 100644
index 905db6448c..9b895269a5 100644
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
@@ -860,9 +860,11 @@ public class PlayerConnection implements PacketListenerPlayIn {
@@ -862,9 +862,11 @@ public class PlayerConnection implements PacketListenerPlayIn {
itemstack2.a("pages", (NBTBase) nbttaglist);
this.player.a(packetplayinbedit.d(), CraftEventFactory.handleEditBookEvent(player, enumitemslot, itemstack1, itemstack2)); // CraftBukkit
} else {

View File

@ -1,4 +1,4 @@
From e776f5ab14aa0c2cf5e54dee68753ae4d7f1cf13 Mon Sep 17 00:00:00 2001
From b3f1cc3d7a9e55cc027dadfa13dcb9d98fe2b9ce Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Thu, 28 Feb 2019 00:15:28 -0500
Subject: [PATCH] Fix sign edit memory leak
@ -6,10 +6,10 @@ Subject: [PATCH] Fix sign edit memory leak
when a player edits a sign, a reference to their Entity is never cleand up.
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
index 98d1138cb..b3f1fb9eb 100644
index 9b895269a5..ec4b693730 100644
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
@@ -2565,7 +2565,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
@@ -2567,7 +2567,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
TileEntitySign tileentitysign = (TileEntitySign) tileentity;
@ -19,7 +19,7 @@ index 98d1138cb..b3f1fb9eb 100644
this.sendPacket(tileentity.getUpdatePacket()); // CraftBukkit
return;
diff --git a/src/main/java/net/minecraft/server/TileEntitySign.java b/src/main/java/net/minecraft/server/TileEntitySign.java
index 15b3add9e..caeaca4c7 100644
index 15b3add9ed..caeaca4c7a 100644
--- a/src/main/java/net/minecraft/server/TileEntitySign.java
+++ b/src/main/java/net/minecraft/server/TileEntitySign.java
@@ -17,6 +17,7 @@ public class TileEntitySign extends TileEntity implements ICommandListener { //

View File

@ -1,4 +1,4 @@
From bf2e2a2b9059d94f9f580540499aa42cc2938754 Mon Sep 17 00:00:00 2001
From 2c0aa4cedebba8a081b3185cc851674bd4b05d27 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Wed, 27 Feb 2019 22:18:40 -0500
Subject: [PATCH] Limit Client Sign length more
@ -22,7 +22,7 @@ it only impacts data sent from the client.
Set -DPaper.maxSignLength=XX to change limit or -1 to disable
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
index b3f1fb9eb..5ad28ec74 100644
index ec4b693730..69d39a47ba 100644
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
@@ -103,6 +103,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
@ -33,7 +33,7 @@ index b3f1fb9eb..5ad28ec74 100644
private static final long KEEPALIVE_LIMIT = Long.getLong("paper.playerconnection.keepalive", 30) * 1000; // Paper - provide property to set keepalive limit
public PlayerConnection(MinecraftServer minecraftserver, NetworkManager networkmanager, EntityPlayer entityplayer) {
@@ -2581,6 +2582,15 @@ public class PlayerConnection implements PacketListenerPlayIn {
@@ -2583,6 +2584,15 @@ public class PlayerConnection implements PacketListenerPlayIn {
String[] lines = new String[4];
for (int i = 0; i < astring.length; ++i) {

View File

@ -1,11 +1,11 @@
From d95416ab0b62ee13e0f11db1ff1b2221129ee363 Mon Sep 17 00:00:00 2001
From d7985327c60ac20d865d6ba5e8923fe8b0811438 Mon Sep 17 00:00:00 2001
From: AgentTroll <woodyc40@gmail.com>
Date: Fri, 22 Mar 2019 22:24:03 -0700
Subject: [PATCH] Update entity Metadata for all tracked players
diff --git a/src/main/java/net/minecraft/server/EntityTrackerEntry.java b/src/main/java/net/minecraft/server/EntityTrackerEntry.java
index afd8748da..17b6ab57c 100644
index afd8748da8..17b6ab57c2 100644
--- a/src/main/java/net/minecraft/server/EntityTrackerEntry.java
+++ b/src/main/java/net/minecraft/server/EntityTrackerEntry.java
@@ -379,6 +379,12 @@ public class EntityTrackerEntry {
@ -22,10 +22,10 @@ index afd8748da..17b6ab57c 100644
this.f.accept(packet);
if (this.tracker instanceof EntityPlayer) {
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
index 5ad28ec74..f3f6fa1c4 100644
index 69d39a47ba..4e8b8f49c4 100644
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
@@ -2025,7 +2025,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
@@ -2027,7 +2027,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
if (event.isCancelled() || this.player.inventory.getItemInHand() == null || this.player.inventory.getItemInHand().getItem() != origItem) {
// Refresh the current entity metadata

View File

@ -1,4 +1,4 @@
From 2157beee53ff8518f7b5fd3e9e1662650481f7c4 Mon Sep 17 00:00:00 2001
From cbc0ab008f6a703a9c49e518efee9a45541c535c Mon Sep 17 00:00:00 2001
From: simpleauthority <jacob@algorithmjunkie.com>
Date: Tue, 28 May 2019 03:48:51 -0700
Subject: [PATCH] Implement CraftBlockSoundGroup
@ -6,7 +6,7 @@ Subject: [PATCH] Implement CraftBlockSoundGroup
diff --git a/src/main/java/com/destroystokyo/paper/block/CraftBlockSoundGroup.java b/src/main/java/com/destroystokyo/paper/block/CraftBlockSoundGroup.java
new file mode 100644
index 00000000..99f99330
index 0000000000..99f99330d0
--- /dev/null
+++ b/src/main/java/com/destroystokyo/paper/block/CraftBlockSoundGroup.java
@@ -0,0 +1,38 @@
@ -49,7 +49,7 @@ index 00000000..99f99330
+ }
+}
diff --git a/src/main/java/net/minecraft/server/IBlockData.java b/src/main/java/net/minecraft/server/IBlockData.java
index c66cabe8..709cc3d7 100644
index c66cabe82f..709cc3d768 100644
--- a/src/main/java/net/minecraft/server/IBlockData.java
+++ b/src/main/java/net/minecraft/server/IBlockData.java
@@ -266,6 +266,7 @@ public class IBlockData extends BlockDataAbstract<Block, IBlockData> implements
@ -61,7 +61,7 @@ index c66cabe8..709cc3d7 100644
return this.getBlock().getStepSound(this);
}
diff --git a/src/main/java/net/minecraft/server/SoundEffectType.java b/src/main/java/net/minecraft/server/SoundEffectType.java
index 5460d409..ccd5b052 100644
index 5460d409b7..ccd5b0529a 100644
--- a/src/main/java/net/minecraft/server/SoundEffectType.java
+++ b/src/main/java/net/minecraft/server/SoundEffectType.java
@@ -26,10 +26,10 @@ public class SoundEffectType {
@ -96,7 +96,7 @@ index 5460d409..ccd5b052 100644
return this.C;
}
diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java b/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java
index 166c918d..5296c6d9 100644
index 166c918d73..5296c6d9bf 100644
--- a/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java
+++ b/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java
@@ -689,4 +689,11 @@ public class CraftBlock implements Block {
@ -112,5 +112,5 @@ index 166c918d..5296c6d9 100644
+ // Paper end
}
--
2.19.2
2.21.0

View File

@ -1,4 +1,4 @@
From 31b83772019ef71b865f779b6ef7f253a8ea323b Mon Sep 17 00:00:00 2001
From ffe3cb42d4aefedfb6d179f1208ab22d61a8588e Mon Sep 17 00:00:00 2001
From: Spottedleaf <Spottedleaf@users.noreply.github.com>
Date: Sat, 1 Jun 2019 13:00:55 -0700
Subject: [PATCH] Chunk debug command