Add system property to dump stack on bad plugin class access (#8417)

This commit is contained in:
Nassim Jahnke 2022-10-01 11:49:27 +02:00 committed by GitHub
parent 2534e5cbbf
commit e9618f8780
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -0,0 +1,23 @@
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 f7cfe6c0d9d52ed72d0d45baaaf856c15769c668..06daf7e7b9f177256a7a15b91e72ff53f89ccb68 100644
--- a/src/main/java/org/bukkit/plugin/java/PluginClassLoader.java
+++ b/src/main/java/org/bukkit/plugin/java/PluginClassLoader.java
@@ -162,6 +162,11 @@ public final class PluginClassLoader extends URLClassLoader { // Spigot
// In case the bad access occurs on construction
loader.server.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 start
+ if (Boolean.getBoolean("Paper.printStacktraceOnBadPluginClassAccess")) {
+ new Exception().printStackTrace();
+ }
+ // Paper end
}
}