Paper/patches/api/0386-Add-system-property-to-print-stacktrace-on-bad-plugi.patch
Owen 0e4f2cc527
Small paper plugin fixes (#8866)
Co-authored-by: Bjarne Koll <lynxplay101@gmail.com>
Co-authored-by: Jake Potrebic <jake.m.potrebic@gmail.com>
2023-02-20 13:02:53 -05:00

24 lines
1.4 KiB
Diff

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Nassim Jahnke <nassim@njahnke.dev>
Date: Sat, 1 Oct 2022 09:44:26 +0200
Subject: [PATCH] Add system property to print stacktrace on bad plugin class
access
diff --git a/src/main/java/org/bukkit/plugin/java/PluginClassLoader.java b/src/main/java/org/bukkit/plugin/java/PluginClassLoader.java
index e9fbf5fd2c86150561468f2c061b75004b123952..e0e69b5639eeb424cb55b0be24a7e938e45fbb26 100644
--- a/src/main/java/org/bukkit/plugin/java/PluginClassLoader.java
+++ b/src/main/java/org/bukkit/plugin/java/PluginClassLoader.java
@@ -184,6 +184,11 @@ public final class PluginClassLoader extends URLClassLoader implements io.paperm
// In case the bad access occurs on construction
org.bukkit.Bukkit.getLogger().log(Level.WARNING, "[{0}] Loaded class {1} from {2} which is not a depend or softdepend of this plugin.", new Object[]{description.getName(), name, provider.getFullName()}); // Paper
}
+ // Paper start
+ if (Boolean.getBoolean("Paper.printStacktraceOnBadPluginClassAccess")) {
+ (plugin != null ? plugin.getLogger() : org.bukkit.Bukkit.getLogger()).log(Level.WARNING, "Stacktrace", new Exception());
+ }
+ // Paper end
}
}