From 20bc1985b1d0bbdcfd619c40dd984ff9f2b9d15c Mon Sep 17 00:00:00 2001 From: MedicOP Date: Mon, 14 Jan 2019 01:12:22 +0100 Subject: [PATCH] Fix NPE in PartyOperationHandler (#321) --- .../channel/handlers/PartyOperationHandler.java | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/src/net/server/channel/handlers/PartyOperationHandler.java b/src/net/server/channel/handlers/PartyOperationHandler.java index 67ee473a18..95727de6c3 100644 --- a/src/net/server/channel/handlers/PartyOperationHandler.java +++ b/src/net/server/channel/handlers/PartyOperationHandler.java @@ -75,7 +75,7 @@ public final class PartyOperationHandler extends AbstractMaplePacketHandler { c.announce(MaplePacketCreator.partyStatusMessage(10)); return; } - if (player.getParty() == null) { + if (party == null) { partyplayer = new MaplePartyCharacter(player); party = world.createParty(partyplayer); player.setParty(party); @@ -91,15 +91,17 @@ public final class PartyOperationHandler extends AbstractMaplePacketHandler { break; } case 2: { // leave/disband - List partymembers = player.getPartyMembers(); - - leaveParty(party, partyplayer, c); - player.partyOperationUpdate(party, partymembers); + if (party != null) { + List partymembers = player.getPartyMembers(); + + leaveParty(party, partyplayer, c); + player.partyOperationUpdate(party, partymembers); + } break; } case 3: { // join int partyid = slea.readInt(); - if (player.getParty() == null) { + if (party == null) { party = world.getParty(partyid); if (party != null) { if (party.getMembers().size() < 6) { @@ -136,7 +138,7 @@ public final class PartyOperationHandler extends AbstractMaplePacketHandler { } if (invited.getParty() == null) { - if (player.getParty() == null) { + if (party == null) { if(player.getLevel() < 10 && !ServerConstants.USE_PARTY_FOR_STARTERS) { c.announce(MaplePacketCreator.partyStatusMessage(10)); return;