geforkt von Mirrors/Paper
2f782a6652
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 CraftBukkit Changes:17543ecf
SPIGOT-5035: Error Using Virtual Merchant GUI0fc6922b
SPIGOT-5028: Villager#setVillagerExperience() doesn't workbdbdbe44
SPIGOT-5024: Fox error - Unknown target reason
67 Zeilen
2.9 KiB
Diff
67 Zeilen
2.9 KiB
Diff
From 5e5241742c1bb8616759fb461fff1c1672ea14de Mon Sep 17 00:00:00 2001
|
|
From: Aikar <aikar@aikar.co>
|
|
Date: Sat, 2 Mar 2019 16:12:35 -0500
|
|
Subject: [PATCH] MC-145260: Fix Whitelist On/Off inconsistency
|
|
|
|
mojang stored whitelist state in 2 places (Whitelist Object, PlayerList)
|
|
|
|
some things checked PlayerList, some checked object. This moves
|
|
everything to the Whitelist object.
|
|
|
|
https://github.com/PaperMC/Paper/issues/1880
|
|
|
|
diff --git a/src/main/java/net/minecraft/server/JsonList.java b/src/main/java/net/minecraft/server/JsonList.java
|
|
index 8570e38f42..c97be42dd7 100644
|
|
--- a/src/main/java/net/minecraft/server/JsonList.java
|
|
+++ b/src/main/java/net/minecraft/server/JsonList.java
|
|
@@ -64,6 +64,7 @@ public class JsonList<K, V extends JsonListEntry<K>> {
|
|
return this.e;
|
|
}
|
|
|
|
+ public void setEnabled(boolean flag) { this.a(flag); } // Paper - OBFHeLPER
|
|
public void a(boolean flag) {
|
|
this.e = flag;
|
|
}
|
|
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
|
|
index 0aafa1b609..eab23bd152 100644
|
|
--- a/src/main/java/net/minecraft/server/PlayerList.java
|
|
+++ b/src/main/java/net/minecraft/server/PlayerList.java
|
|
@@ -62,7 +62,7 @@ public abstract class PlayerList {
|
|
// private final Map<UUID, AdvancementDataPlayer> p;
|
|
// CraftBukkit end
|
|
public IPlayerFileData playerFileData;
|
|
- private boolean hasWhitelist;
|
|
+ //private boolean hasWhitelist;
|
|
protected final int maxPlayers;
|
|
private int viewDistance;
|
|
private EnumGamemode t;
|
|
@@ -899,9 +899,9 @@ public abstract class PlayerList {
|
|
}
|
|
public boolean isWhitelisted(GameProfile gameprofile, org.bukkit.event.player.PlayerLoginEvent loginEvent) {
|
|
boolean isOp = this.operators.d(gameprofile);
|
|
- boolean isWhitelisted = !this.hasWhitelist || isOp || this.whitelist.d(gameprofile);
|
|
+ boolean isWhitelisted = !this.getHasWhitelist() || isOp || this.whitelist.d(gameprofile);
|
|
final com.destroystokyo.paper.event.profile.ProfileWhitelistVerifyEvent event;
|
|
- event = new com.destroystokyo.paper.event.profile.ProfileWhitelistVerifyEvent(MCUtil.toBukkit(gameprofile), this.hasWhitelist, isWhitelisted, isOp, org.spigotmc.SpigotConfig.whitelistMessage);
|
|
+ event = new com.destroystokyo.paper.event.profile.ProfileWhitelistVerifyEvent(MCUtil.toBukkit(gameprofile), this.getHasWhitelist(), isWhitelisted, isOp, org.spigotmc.SpigotConfig.whitelistMessage);
|
|
event.callEvent();
|
|
if (!event.isWhitelisted()) {
|
|
if (loginEvent != null) {
|
|
@@ -1030,11 +1030,11 @@ public abstract class PlayerList {
|
|
}
|
|
|
|
public boolean getHasWhitelist() {
|
|
- return this.hasWhitelist;
|
|
+ return this.whitelist.isEnabled(); // Paper
|
|
}
|
|
|
|
public void setHasWhitelist(boolean flag) {
|
|
- this.hasWhitelist = flag;
|
|
+ this.whitelist.setEnabled(flag); // Paper
|
|
}
|
|
|
|
public List<EntityPlayer> b(String s) {
|
|
--
|
|
2.21.0
|
|
|