From 513848c7ea7cb2da5123f498df0277409b804e27 Mon Sep 17 00:00:00 2001 From: Zoey76 <zoey_76@msn.com> Date: Sun, 16 Sep 2012 02:48:02 +0000 Subject: [PATCH] BETA: NPE vulnerability fix. * Closing #5358 --- .../admincommandhandlers/AdminAdmin.java | 19 +++++++------------ 1 file changed, 7 insertions(+), 12 deletions(-) diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/handlers/admincommandhandlers/AdminAdmin.java b/L2J_DataPack_BETA/dist/game/data/scripts/handlers/admincommandhandlers/AdminAdmin.java index d1ea369118..0aa2c9cf4f 100644 --- a/L2J_DataPack_BETA/dist/game/data/scripts/handlers/admincommandhandlers/AdminAdmin.java +++ b/L2J_DataPack_BETA/dist/game/data/scripts/handlers/admincommandhandlers/AdminAdmin.java @@ -87,7 +87,6 @@ public class AdminAdmin implements IAdminCommandHandler @Override public boolean useAdminCommand(String command, L2PcInstance activeChar) { - if (command.startsWith("admin_admin")) { showMainPage(activeChar, command); @@ -137,22 +136,18 @@ public class AdminAdmin implements IAdminCommandHandler { _log.warning("An error occured while ending olympiad: " + e); } - activeChar.sendMessage("Heroes formed"); + activeChar.sendMessage("Heroes formed."); } else if (command.startsWith("admin_manualhero") || command.startsWith("admin_sethero")) { - L2PcInstance target = null; - - if (activeChar.getTarget().isPlayer()) + if (activeChar.getTarget() == null) { - target = activeChar.getTarget().getActingPlayer(); - target.setHero(target.isHero() ? false : true); - } - else - { - target = activeChar; - target.setHero(target.isHero() ? false : true); + activeChar.sendPacket(SystemMessageId.INCORRECT_TARGET); + return false; } + + final L2PcInstance target = activeChar.getTarget().isPlayer() ? activeChar.getTarget().getActingPlayer() : activeChar; + target.setHero(!target.isHero()); target.broadcastUserInfo(); } else if (command.startsWith("admin_diet")) -- GitLab