forked from TuxCoding/FastLogin
Fix weird 1.9 bugs
This commit is contained in:
@ -47,7 +47,7 @@ public class FastLoginBukkit extends JavaPlugin {
|
||||
//SafeCacheBuilder is used in order to be version independent
|
||||
private final ConcurrentMap<String, PlayerSession> session = SafeCacheBuilder.<String, PlayerSession>newBuilder()
|
||||
//2 minutes should be enough as a timeout for bad internet connection (Server, Client and Mojang)
|
||||
.expireAfterWrite(30, TimeUnit.SECONDS)
|
||||
.expireAfterWrite(1, TimeUnit.MINUTES)
|
||||
//mapped by ip:port -> PlayerSession
|
||||
.build(new CacheLoader<String, PlayerSession>() {
|
||||
|
||||
|
@ -34,7 +34,8 @@ public class BukkitJoinListener implements Listener {
|
||||
public void onPlayerJoin(PlayerJoinEvent joinEvent) {
|
||||
final Player player = joinEvent.getPlayer();
|
||||
|
||||
PlayerSession session = plugin.getSessions().get(player.getAddress().toString());
|
||||
//removing the session because we now use it
|
||||
final PlayerSession session = plugin.getSessions().remove(player.getAddress().toString());
|
||||
if (session != null) {
|
||||
WrappedGameProfile gameProfile = WrappedGameProfile.fromPlayer(player);
|
||||
WrappedSignedProperty skin = session.getSkin();
|
||||
@ -47,10 +48,6 @@ public class BukkitJoinListener implements Listener {
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
String address = player.getAddress().toString();
|
||||
//removing the session because we now use it
|
||||
PlayerSession session = plugin.getSessions().remove(address);
|
||||
|
||||
if (player.isOnline()) {
|
||||
//blacklist this target player for BungeeCord Id brute force attacks
|
||||
player.setMetadata(plugin.getName(), new FixedMetadataValue(plugin, true));
|
||||
|
Reference in New Issue
Block a user