mirror of
https://github.com/PaperMC/Paper.git
synced 2025-01-17 23:01:01 +01:00
Fix unnecessary and potential not thread-safe chat visibility check
By: md_5 <git@md-5.net>
This commit is contained in:
parent
38d4a335ea
commit
06b53d8386
2 changed files with 2 additions and 5 deletions
|
@ -1177,7 +1177,7 @@
|
|||
|
||||
public void sendPlayerChatMessage(PlayerChatMessage playerchatmessage, ChatMessageType.a chatmessagetype_a) {
|
||||
+ // CraftBukkit start - SPIGOT-7262: if hidden we have to send as disguised message. Query whether we should send at all (but changing this may not be expected).
|
||||
+ if (!getCraftPlayer().canSee(playerchatmessage.link().sender())) {
|
||||
+ if (!getCraftPlayer().canSeePlayer(playerchatmessage.link().sender())) {
|
||||
+ sendDisguisedChatMessage(playerchatmessage.decoratedContent(), chatmessagetype_a);
|
||||
+ return;
|
||||
+ }
|
||||
|
|
|
@ -1657,11 +1657,8 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
|
|||
return equals(entity) || entity.isVisibleByDefault() ^ invertedVisibilityEntities.containsKey(entity.getUniqueId()); // SPIGOT-7312: Can always see self
|
||||
}
|
||||
|
||||
public boolean canSee(UUID uuid) {
|
||||
public boolean canSeePlayer(UUID uuid) {
|
||||
org.bukkit.entity.Entity entity = getServer().getPlayer(uuid);
|
||||
if (entity == null) {
|
||||
entity = getServer().getEntity(uuid); // Also includes players, but check players first for efficiency
|
||||
}
|
||||
|
||||
return (entity != null) ? canSee(entity) : false; // If we can't find it, we can't see it
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue