74f507f4e3
Upstream has released updates that appears to apply and compile correctly. This update has not been tested by PaperMC and as with ANY update, please do your own testing Bukkit Changes: e461dcfe #555: Item - add getters/setters for owner/thrower CraftBukkit Changes: 055870c4 #758: Item - add getters/setters for owner/thrower
25 Zeilen
1.5 KiB
Diff
25 Zeilen
1.5 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Zach Brown <zach@zachbr.io>
|
|
Date: Thu, 16 Apr 2020 20:07:29 -0500
|
|
Subject: [PATCH] Restrict vanilla teleport command to valid locations
|
|
|
|
Fixes GH-3165, GH-3575
|
|
|
|
diff --git a/src/main/java/net/minecraft/server/CommandTeleport.java b/src/main/java/net/minecraft/server/CommandTeleport.java
|
|
index db9c28b51ff46729f8d7ac5c05905b16f61fcc59..ddc978279f9436617bec222cef8e552c5cdad77b 100644
|
|
--- a/src/main/java/net/minecraft/server/CommandTeleport.java
|
|
+++ b/src/main/java/net/minecraft/server/CommandTeleport.java
|
|
@@ -119,6 +119,12 @@ public class CommandTeleport {
|
|
|
|
private static void a(CommandListenerWrapper commandlistenerwrapper, Entity entity, WorldServer worldserver, double d0, double d1, double d2, Set<PacketPlayOutPosition.EnumPlayerTeleportFlags> set, float f, float f1, @Nullable CommandTeleport.a commandteleport_a) throws CommandSyntaxException {
|
|
BlockPosition blockposition = new BlockPosition(d0, d1, d2);
|
|
+ // Paper start - Don't allow teleport command to invalid locations
|
|
+ if (d0 <= -30000000 || d2 <= -30000000 || d0 > 30000000 || d2 > 30000000 || d1 > 30000000 || d1 <= -30000000) { // Copy/pasta from BaseBlockPosition#isValidLocation
|
|
+ org.bukkit.Bukkit.getLogger().warning("Refused to teleport " + entity.getName() + " to " + d0 + ", " + d1 + ", " + d2);
|
|
+ return;
|
|
+ }
|
|
+ // Paper end
|
|
|
|
if (!World.l(blockposition)) {
|
|
throw CommandTeleport.a.create();
|