From 93883cfc1231824fcabd061b4c01580cd172dd04 Mon Sep 17 00:00:00 2001 From: snowleo Date: Thu, 11 Aug 2011 13:43:04 +0200 Subject: Catch NPE while login of new player --- Essentials/src/com/earth2me/essentials/Essentials.java | 10 ++++++++-- .../src/com/earth2me/essentials/EssentialsPlayerListener.java | 5 ++++- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/Essentials/src/com/earth2me/essentials/Essentials.java b/Essentials/src/com/earth2me/essentials/Essentials.java index 117c3717d..a3457df12 100644 --- a/Essentials/src/com/earth2me/essentials/Essentials.java +++ b/Essentials/src/com/earth2me/essentials/Essentials.java @@ -561,8 +561,14 @@ public class Essentials extends JavaPlugin implements IEssentials { return (User)base; } - //Todo: catch this and deal with it? - return userMap.getUser(base.getName()).update(base); + try + { + return userMap.getUser(base.getName()).update(base); + } + catch (NullPointerException ex) + { + return null; + } } @Override diff --git a/Essentials/src/com/earth2me/essentials/EssentialsPlayerListener.java b/Essentials/src/com/earth2me/essentials/EssentialsPlayerListener.java index 2a3ba77f1..ff32a9636 100644 --- a/Essentials/src/com/earth2me/essentials/EssentialsPlayerListener.java +++ b/Essentials/src/com/earth2me/essentials/EssentialsPlayerListener.java @@ -303,7 +303,10 @@ public class EssentialsPlayerListener extends PlayerListener { return; } - final User user = ess.getUser(event.getPlayer()); + User user = ess.getUser(event.getPlayer()); + if (user == null) { + user = new User(event.getPlayer(), ess); + } user.setNPC(false); final long currentTime = System.currentTimeMillis(); -- cgit v1.2.3