Files
Purpur/patches/server/0050-Don-t-recalculate-permissions-for-players-on-world-c.patch
William Blake Galbreath 2d212d6e78 Updated Upstream (Paper)
Upstream has released updates that appears to apply and compile correctly

Paper Changes:
7caed1a8 [CI-SKIP] Rebuild patches
777073a5 Check horse entity validity in container interactions (#2584)
d69fe6c5 Fix zero-tick instant grow farms MC-113809 (#2559)
c68dbb86 Updated Upstream (Bukkit/CraftBukkit/Spigot) (#2576)
1e521994 Update Paperclip
30f9955e Fix race conditions in flush allowing for previously scheduled tasks to execute later than the flush call (#2548)
9e1620e3 Improve save logic (#2485)
72860501 [CI-SKIP] Fix duplicate patch number
87355875 Fix nether portal frame creation (#2546)
26acc9b7 Re-add flat bedrock config option
2019-09-26 11:40:21 -05:00

51 lines
2.5 KiB
Diff

From 4ce5f542966dc9bf338e7c805858ecb3b549e776 Mon Sep 17 00:00:00 2001
From: Tom <cryptite@gmail.com>
Date: Fri, 12 Jul 2019 07:59:35 -0500
Subject: [PATCH] Don't recalculate permissions for players on world change
---
src/main/java/net/minecraft/server/PlayerList.java | 3 ++-
src/main/java/net/pl3x/purpur/PurpurConfig.java | 5 +++++
2 files changed, 7 insertions(+), 1 deletion(-)
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
index 3cb443c4f..a33285379 100644
--- a/src/main/java/net/minecraft/server/PlayerList.java
+++ b/src/main/java/net/minecraft/server/PlayerList.java
@@ -711,7 +711,7 @@ public abstract class PlayerList {
entityplayer1.playerConnection.sendPacket(new PacketPlayOutServerDifficulty(worlddata.getDifficulty(), worlddata.isDifficultyLocked()));
entityplayer1.playerConnection.sendPacket(new PacketPlayOutExperience(entityplayer1.exp, entityplayer1.expTotal, entityplayer1.expLevel));
this.a(entityplayer1, worldserver);
- this.d(entityplayer1);
+ if (net.pl3x.purpur.PurpurConfig.updatePermissionsOnWorldChange) updatePermissions(entityplayer1); // Purpur
if (!entityplayer.playerConnection.isDisconnected()) {
worldserver.addPlayerRespawn(entityplayer1);
this.players.add(entityplayer1);
@@ -752,6 +752,7 @@ public abstract class PlayerList {
return entityplayer1;
}
+ public void updatePermissions(EntityPlayer entityPlayer) { d(entityPlayer); } // Purpur
public void d(EntityPlayer entityplayer) {
GameProfile gameprofile = entityplayer.getProfile();
int i = this.server.a(gameprofile);
diff --git a/src/main/java/net/pl3x/purpur/PurpurConfig.java b/src/main/java/net/pl3x/purpur/PurpurConfig.java
index 4243cd4d7..96461a1cf 100644
--- a/src/main/java/net/pl3x/purpur/PurpurConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurConfig.java
@@ -166,6 +166,11 @@ public class PurpurConfig {
useBetterMending = getBoolean("settings.use-better-mending", useBetterMending);
}
+ public static boolean updatePermissionsOnWorldChange = false;
+ private static void updatePermissionsOnWorldChange() {
+ updatePermissionsOnWorldChange = getBoolean("settings.update-perms-on-world-change", updatePermissionsOnWorldChange);
+ }
+
public static boolean requireShiftToMount = true;
private static void requireShiftToMount() {
requireShiftToMount = getBoolean("settings.mobs.require-shift-to-mount", requireShiftToMount);
--
2.23.0.rc1