From 1c3ca520dcd0590021b85f7bea1f44c06df1dd5c Mon Sep 17 00:00:00 2001 From: ljacqu Date: Mon, 4 Jul 2016 19:56:44 +0200 Subject: [PATCH] Fix player being unable to walk after admin registration - Fix sessions still working after being disabled on reload --- src/main/java/fr/xephi/authme/cache/SessionManager.java | 2 +- .../command/executable/authme/RegisterAdminCommand.java | 5 +++++ .../authme/listener/protocollib/ProtocolLibService.java | 5 +---- 3 files changed, 7 insertions(+), 5 deletions(-) diff --git a/src/main/java/fr/xephi/authme/cache/SessionManager.java b/src/main/java/fr/xephi/authme/cache/SessionManager.java index ff448f3f..d6ba85d8 100644 --- a/src/main/java/fr/xephi/authme/cache/SessionManager.java +++ b/src/main/java/fr/xephi/authme/cache/SessionManager.java @@ -27,7 +27,7 @@ public class SessionManager implements SettingsDependent { * @return True if a session is found. */ public boolean hasSession(String name) { - return sessions.containsKey(name); + return enabled && sessions.containsKey(name); } /** diff --git a/src/main/java/fr/xephi/authme/command/executable/authme/RegisterAdminCommand.java b/src/main/java/fr/xephi/authme/command/executable/authme/RegisterAdminCommand.java index deddaf9c..325eb4c0 100644 --- a/src/main/java/fr/xephi/authme/command/executable/authme/RegisterAdminCommand.java +++ b/src/main/java/fr/xephi/authme/command/executable/authme/RegisterAdminCommand.java @@ -2,6 +2,7 @@ package fr.xephi.authme.command.executable.authme; import fr.xephi.authme.ConsoleLogger; import fr.xephi.authme.cache.auth.PlayerAuth; +import fr.xephi.authme.cache.limbo.LimboCache; import fr.xephi.authme.command.CommandService; import fr.xephi.authme.command.ExecutableCommand; import fr.xephi.authme.datasource.DataSource; @@ -37,6 +38,9 @@ public class RegisterAdminCommand implements ExecutableCommand { @Inject private ValidationService validationService; + @Inject + private LimboCache limboCache; + @Override public void executeCommand(final CommandSender sender, List arguments) { // Get the player name and password @@ -79,6 +83,7 @@ public class RegisterAdminCommand implements ExecutableCommand { bukkitService.scheduleSyncDelayedTask(new Runnable() { @Override public void run() { + limboCache.restoreData(player); player.kickPlayer(commandService.retrieveSingle(MessageKey.KICK_FOR_ADMIN_REGISTER)); } }); diff --git a/src/main/java/fr/xephi/authme/listener/protocollib/ProtocolLibService.java b/src/main/java/fr/xephi/authme/listener/protocollib/ProtocolLibService.java index 34630c04..4691ff4f 100644 --- a/src/main/java/fr/xephi/authme/listener/protocollib/ProtocolLibService.java +++ b/src/main/java/fr/xephi/authme/listener/protocollib/ProtocolLibService.java @@ -5,7 +5,6 @@ import fr.xephi.authme.ConsoleLogger; import fr.xephi.authme.initialization.SettingsDependent; import fr.xephi.authme.settings.NewSetting; import fr.xephi.authme.settings.properties.RestrictionSettings; -import fr.xephi.authme.util.BukkitService; import org.bukkit.entity.Player; import javax.inject.Inject; @@ -23,12 +22,10 @@ public class ProtocolLibService implements SettingsDependent { /* Service */ private boolean isEnabled; private AuthMe plugin; - private BukkitService bukkitService; @Inject - ProtocolLibService(AuthMe plugin, BukkitService bukkitService, NewSetting settings) { + ProtocolLibService(AuthMe plugin, NewSetting settings) { this.plugin = plugin; - this.bukkitService = bukkitService; loadSettings(settings); setup(); }