Skip to content

Commit

Permalink
Account for null servers in bungee
Browse files Browse the repository at this point in the history
  • Loading branch information
booky10 committed Aug 12, 2024
1 parent ef4bc1c commit c3f233c
Showing 1 changed file with 12 additions and 1 deletion.
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,7 @@
import net.kyori.adventure.text.format.NamedTextColor;
import net.md_5.bungee.api.ProxyServer;
import net.md_5.bungee.api.connection.ProxiedPlayer;
import net.md_5.bungee.api.connection.Server;
import net.md_5.bungee.api.plugin.Plugin;
import net.md_5.bungee.protocol.ProtocolConstants;
import org.jetbrains.annotations.NotNull;
Expand Down Expand Up @@ -109,7 +110,17 @@ public ServerVersion getVersion() {
@Override
public Object getRegistryCacheKey(User user, ClientVersion version) {
ProxiedPlayer player = ProxyServer.getInstance().getPlayer(user.getUUID());
return player == null ? null : Objects.hash(player.getServer().getInfo(), version);
if (player == null) {
return null;
}
Server server = player.getServer();
if (server == null) {
// seems to be null during server switch or on join,
// but only for some specific bungee forks?
// BungeeCord would be a lot safer if they were to use nullability annotations...
return null;
}
return Objects.hash(server.getInfo(), version);
}
};

Expand Down

0 comments on commit c3f233c

Please sign in to comment.