mirror of
https://github.com/PaperMC/Paper.git
synced 2025-01-02 17:32:03 +01:00
4d6f73449f
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
64 lines
No EOL
2.9 KiB
Diff
64 lines
No EOL
2.9 KiB
Diff
From 0000000000000000000000000000000000000000 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
|
|
@@ -0,0 +0,0 @@ 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
|
|
@@ -0,0 +0,0 @@ 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;
|
|
@@ -0,0 +0,0 @@ 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) {
|
|
@@ -0,0 +0,0 @@ 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) {
|
|
--
|