From 469a56258d5a4e070d3849472a25d799b9dd4de2 Mon Sep 17 00:00:00 2001 From: Xephi Date: Wed, 27 Aug 2014 07:28:47 +0200 Subject: [PATCH] Security for the previous commit --- .../xephi/authme/listener/AuthMePlayerListener.java | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/main/java/fr/xephi/authme/listener/AuthMePlayerListener.java b/src/main/java/fr/xephi/authme/listener/AuthMePlayerListener.java index 3214a7ddd..e7b709fb8 100644 --- a/src/main/java/fr/xephi/authme/listener/AuthMePlayerListener.java +++ b/src/main/java/fr/xephi/authme/listener/AuthMePlayerListener.java @@ -385,9 +385,14 @@ public class AuthMePlayerListener implements Listener { final String lowname = player.getName().toLowerCase(); final String name = player.getName(); - if (!lowname.equals(name)) - if (data.isAuthAvailable(lowname)) - data.updateName(lowname, name); + if (!lowname.equals(name)) { + // Little workaround to be sure registered player is the same as this + if (player.hasPlayedBefore()) + // Make sure it's the correct player + if (data.getAuth(lowname).getIp().equalsIgnoreCase(player.getAddress().getAddress().getHostAddress())) + if (data.isAuthAvailable(lowname)) + data.updateName(lowname, name); + } if (plugin.getCitizensCommunicator().isNPC(player, plugin) || Utils.getInstance().isUnrestricted(player) || CombatTagComunicator.isNPC(player)) { return;