API patches
This commit is contained in:
		
					parent
					
						
							
								bea0e28dc4
							
						
					
				
			
			
				commit
				
					
						b7dd55ce72
					
				
			
		
					 962 changed files with 62 additions and 59 deletions
				
			
		| 
						 | 
				
			
			@ -1,67 +0,0 @@
 | 
			
		|||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
 | 
			
		||||
From: =?UTF-8?q?Jos=C3=A9=20Miguel=20Moreno?= <josemmo@pm.me>
 | 
			
		||||
Date: Sat, 5 Jun 2021 13:45:15 +0200
 | 
			
		||||
Subject: [PATCH] Fix plugin loggers on server shutdown
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
diff --git a/src/main/java/io/papermc/paper/log/CustomLogManager.java b/src/main/java/io/papermc/paper/log/CustomLogManager.java
 | 
			
		||||
new file mode 100644
 | 
			
		||||
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000
 | 
			
		||||
--- /dev/null
 | 
			
		||||
+++ b/src/main/java/io/papermc/paper/log/CustomLogManager.java
 | 
			
		||||
@@ -0,0 +0,0 @@
 | 
			
		||||
+package io.papermc.paper.log;
 | 
			
		||||
+
 | 
			
		||||
+import java.util.logging.LogManager;
 | 
			
		||||
+
 | 
			
		||||
+public class CustomLogManager extends LogManager {
 | 
			
		||||
+    private static CustomLogManager instance;
 | 
			
		||||
+
 | 
			
		||||
+    public CustomLogManager() {
 | 
			
		||||
+        instance = this;
 | 
			
		||||
+    }
 | 
			
		||||
+
 | 
			
		||||
+    @Override
 | 
			
		||||
+    public void reset() {
 | 
			
		||||
+        // Ignore calls to this method
 | 
			
		||||
+    }
 | 
			
		||||
+
 | 
			
		||||
+    private void superReset() {
 | 
			
		||||
+        super.reset();
 | 
			
		||||
+    }
 | 
			
		||||
+
 | 
			
		||||
+    public static void forceReset() {
 | 
			
		||||
+        if (instance != null) {
 | 
			
		||||
+            instance.superReset();
 | 
			
		||||
+        }
 | 
			
		||||
+    }
 | 
			
		||||
+}
 | 
			
		||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
 | 
			
		||||
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
 | 
			
		||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
 | 
			
		||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
 | 
			
		||||
@@ -0,0 +0,0 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
 | 
			
		||||
             net.minecrell.terminalconsole.TerminalConsoleAppender.close(); // Paper - Use TerminalConsoleAppender
 | 
			
		||||
         } catch (Exception e) {
 | 
			
		||||
         }
 | 
			
		||||
+        io.papermc.paper.log.CustomLogManager.forceReset(); // Paper - Reset loggers after shutdown
 | 
			
		||||
         this.onServerExit();
 | 
			
		||||
         // Paper end
 | 
			
		||||
     }
 | 
			
		||||
diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java
 | 
			
		||||
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
 | 
			
		||||
--- a/src/main/java/org/bukkit/craftbukkit/Main.java
 | 
			
		||||
+++ b/src/main/java/org/bukkit/craftbukkit/Main.java
 | 
			
		||||
@@ -0,0 +0,0 @@ public class Main {
 | 
			
		||||
     public static boolean useJline = true;
 | 
			
		||||
     public static boolean useConsole = true;
 | 
			
		||||
 
 | 
			
		||||
+    // Paper start - Hijack log manager to ensure logging on shutdown
 | 
			
		||||
+    static {
 | 
			
		||||
+        System.setProperty("java.util.logging.manager", "io.papermc.paper.log.CustomLogManager");
 | 
			
		||||
+    }
 | 
			
		||||
+    // Paper end
 | 
			
		||||
+
 | 
			
		||||
     public static void main(String[] args) {
 | 
			
		||||
         // Paper start
 | 
			
		||||
         final String warnWhenLegacyFormattingDetected = String.join(".", "net", "kyori", "adventure", "text", "warnWhenLegacyFormattingDetected");
 | 
			
		||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue