From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Jake Potrebic Date: Wed, 14 Dec 2022 15:52:11 -0800 Subject: [PATCH] Improve logging and errors diff --git a/src/main/java/net/minecraft/server/dedicated/Settings.java b/src/main/java/net/minecraft/server/dedicated/Settings.java index f6e423a76d4c9cf639f1d44af80d33cf3072f6b5..135fc81414446f24c3adad71f5199c7898a6c1cd 100644 --- a/src/main/java/net/minecraft/server/dedicated/Settings.java +++ b/src/main/java/net/minecraft/server/dedicated/Settings.java @@ -49,6 +49,12 @@ public abstract class Settings> { } public static Properties loadFromFile(Path path) { + // Paper start + if (Files.notExists(path)) { + LOGGER.info("Could not find existing {}. Creating with default values...", path.getFileName()); + return new Properties(); + } + // Paper end try { Properties properties; Properties properties1; diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java index 479c252ae715a6f12f542a6568aa88192e2c3ca4..456f7b83fddfb92d9505ffd6ed46c6b6482bab83 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -3588,7 +3588,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic this.resetPlayerChatState(remotechatsession_a.validate(this.player.getGameProfile(), signaturevalidator, Duration.ZERO)); } catch (ProfilePublicKey.ValidationException profilepublickey_b) { - ServerGamePacketListenerImpl.LOGGER.error("Failed to validate profile key: {}", profilepublickey_b.getMessage()); + // ServerGamePacketListenerImpl.LOGGER.error("Failed to validate profile key: {}", profilepublickey_b.getMessage()); // Paper - unnecessary log this.disconnect(profilepublickey_b.getComponent(), profilepublickey_b.kickCause); // Paper - kick event causes } diff --git a/src/main/java/net/minecraft/server/packs/PathPackResources.java b/src/main/java/net/minecraft/server/packs/PathPackResources.java index 0232c29d96e1021a9f5a9678996993dc55fe7254..8ad8ad1189d7cdb58caaa39c482d32685afa3f9a 100644 --- a/src/main/java/net/minecraft/server/packs/PathPackResources.java +++ b/src/main/java/net/minecraft/server/packs/PathPackResources.java @@ -105,6 +105,12 @@ public class PathPackResources extends AbstractPackResources { try (DirectoryStream directoryStream = Files.newDirectoryStream(path)) { for(Path path2 : directoryStream) { String string = path2.getFileName().toString(); + // Paper start + if (!Files.isDirectory(path2)) { + LOGGER.error("Invalid directory entry: {} in {}.", string, this.root, new java.nio.file.NotDirectoryException(string)); + continue; + } + // Paper end if (string.equals(string.toLowerCase(Locale.ROOT))) { set.add(string); } else { diff --git a/src/main/java/org/bukkit/craftbukkit/legacy/CraftLegacy.java b/src/main/java/org/bukkit/craftbukkit/legacy/CraftLegacy.java index 9e108b40ab8668837e5f03cf86e3d13b8378eb34..a8ca6b023ad3fc4a81195a692da435b4e5acf012 100644 --- a/src/main/java/org/bukkit/craftbukkit/legacy/CraftLegacy.java +++ b/src/main/java/org/bukkit/craftbukkit/legacy/CraftLegacy.java @@ -45,6 +45,7 @@ import org.bukkit.material.MaterialData; */ @Deprecated public final class CraftLegacy { + private static final org.slf4j.Logger LOGGER = com.mojang.logging.LogUtils.getLogger(); // Paper private static final Map SPAWN_EGGS = new HashMap<>(); private static final Set whitelistedStates = new HashSet<>(Arrays.asList("explode", "check_decay", "decayable", "facing")); @@ -256,7 +257,7 @@ public final class CraftLegacy { } static { - System.err.println("Initializing Legacy Material Support. Unless you have legacy plugins and/or data this is a bug!"); + LOGGER.warn("Initializing Legacy Material Support. Unless you have legacy plugins and/or data this is a bug!"); // Paper - doesn't need to be an error if (MinecraftServer.getServer() != null && MinecraftServer.getServer().isDebugging()) { new Exception().printStackTrace(); }