From 58e7455cd9a906e0487c2c977990e4784291b126 Mon Sep 17 00:00:00 2001 From: KennyTV Date: Sat, 4 Jul 2020 13:22:32 +0200 Subject: [PATCH] Fix NPE on proxies in ViaIdleThread Fixes #1878 --- .../protocol1_9to1_8/ViaIdleThread.java | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/common/src/main/java/us/myles/ViaVersion/protocols/protocol1_9to1_8/ViaIdleThread.java b/common/src/main/java/us/myles/ViaVersion/protocols/protocol1_9to1_8/ViaIdleThread.java index 852483601..6d77c3ee4 100644 --- a/common/src/main/java/us/myles/ViaVersion/protocols/protocol1_9to1_8/ViaIdleThread.java +++ b/common/src/main/java/us/myles/ViaVersion/protocols/protocol1_9to1_8/ViaIdleThread.java @@ -7,17 +7,19 @@ import us.myles.ViaVersion.protocols.protocol1_9to1_8.providers.MovementTransmit import us.myles.ViaVersion.protocols.protocol1_9to1_8.storage.MovementTracker; public class ViaIdleThread implements Runnable { + @Override public void run() { for (UserConnection info : Via.getManager().getConnections()) { ProtocolInfo protocolInfo = info.getProtocolInfo(); - if (protocolInfo != null && protocolInfo.getPipeline().contains(Protocol1_9To1_8.class)) { - long nextIdleUpdate = info.get(MovementTracker.class).getNextIdlePacket(); - if (nextIdleUpdate <= System.currentTimeMillis()) { - if (info.getChannel().isOpen()) { - Via.getManager().getProviders().get(MovementTransmitterProvider.class).sendPlayer(info); - } - } + if (protocolInfo == null || !protocolInfo.getPipeline().contains(Protocol1_9To1_8.class)) continue; + + MovementTracker movementTracker = info.get(MovementTracker.class); + if (movementTracker == null) continue; + + long nextIdleUpdate = movementTracker.getNextIdlePacket(); + if (nextIdleUpdate <= System.currentTimeMillis() && info.getChannel().isOpen()) { + Via.getManager().getProviders().get(MovementTransmitterProvider.class).sendPlayer(info); } } }