From 93dc34980dcbdaea368ceb00a7fbc61e76510e79 Mon Sep 17 00:00:00 2001 From: Ghost_chu <2908803755@qq.com> Date: Sun, 14 Jul 2019 20:31:58 +0800 Subject: [PATCH] Fix NPE when failed check update Former-commit-id: da4873714b107eb409b86393763e1fdeb4950800 [formerly cd82b1280e14dafb384c35ff9bd79154006efafd] Former-commit-id: 7e16e2d7b8147af70fe63ecdc4aaff90a71de78e --- .../SubCommands/SubCommand_Update.java | 9 ++++++- .../quickshop/Util/UpdateInfomation.java | 25 ++++++++++--------- 2 files changed, 21 insertions(+), 13 deletions(-) diff --git a/src/main/java/org/maxgamer/quickshop/Command/SubCommands/SubCommand_Update.java b/src/main/java/org/maxgamer/quickshop/Command/SubCommands/SubCommand_Update.java index 3881dc754..46a5efd22 100644 --- a/src/main/java/org/maxgamer/quickshop/Command/SubCommands/SubCommand_Update.java +++ b/src/main/java/org/maxgamer/quickshop/Command/SubCommands/SubCommand_Update.java @@ -9,6 +9,7 @@ import org.bukkit.scheduler.BukkitRunnable; import org.jetbrains.annotations.*; import org.maxgamer.quickshop.Command.CommandProcesser; import org.maxgamer.quickshop.QuickShop; +import org.maxgamer.quickshop.Util.UpdateInfomation; import org.maxgamer.quickshop.Util.Updater; public class SubCommand_Update implements CommandProcesser { @@ -20,7 +21,13 @@ public class SubCommand_Update implements CommandProcesser { @Override public void run() { sender.sendMessage(ChatColor.YELLOW + "Checking for updates..."); - if (Updater.checkUpdate().getVersion().equals(plugin.getDescription().getVersion())) { + UpdateInfomation updateInfomation = Updater.checkUpdate(); + String updateVersion = updateInfomation.getVersion(); + if (updateVersion == null) { + sender.sendMessage(ChatColor.RED + "Failed check the update, connection issue?"); + return; + } + if (updateVersion.equals(plugin.getDescription().getVersion())) { sender.sendMessage(ChatColor.GREEN + "No updates can update now."); return; } diff --git a/src/main/java/org/maxgamer/quickshop/Util/UpdateInfomation.java b/src/main/java/org/maxgamer/quickshop/Util/UpdateInfomation.java index 63140c802..e02766ca8 100644 --- a/src/main/java/org/maxgamer/quickshop/Util/UpdateInfomation.java +++ b/src/main/java/org/maxgamer/quickshop/Util/UpdateInfomation.java @@ -1,12 +1,13 @@ -package org.maxgamer.quickshop.Util; - -import lombok.*; - -@AllArgsConstructor -@ToString -@Getter -@Setter -public class UpdateInfomation { - private String version; - private boolean isBeta; -} +package org.maxgamer.quickshop.Util; + +import lombok.*; +import org.jetbrains.annotations.*; + +@AllArgsConstructor +@ToString +@Getter +@Setter +public class UpdateInfomation { + @Nullable private String version; + private boolean isBeta; +}