Paper/patches/api/0325-Fix-plugin-provides-load-order.patch

28 lines
1.5 KiB
Diff
Raw Normal View History

2021-10-01 12:53:24 +02:00
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Nassim Jahnke <nassim@njahnke.dev>
2021-10-01 12:53:24 +02:00
Date: Fri, 1 Oct 2021 09:47:00 +0200
Subject: [PATCH] Fix plugin provides load order
Fixes https://hub.spigotmc.org/jira/browse/SPIGOT-6740
diff --git a/src/main/java/org/bukkit/plugin/SimplePluginManager.java b/src/main/java/org/bukkit/plugin/SimplePluginManager.java
2022-07-21 21:53:04 +02:00
index 60988665eb358d5566e9de61aec841db3f79722c..d1c1df75c011d8b4e10342c864aeb206e5cac23f 100644
2021-10-01 12:53:24 +02:00
--- a/src/main/java/org/bukkit/plugin/SimplePluginManager.java
+++ b/src/main/java/org/bukkit/plugin/SimplePluginManager.java
2022-07-21 21:53:04 +02:00
@@ -277,6 +277,7 @@ public final class SimplePluginManager implements PluginManager {
2021-10-01 12:53:24 +02:00
// Paper end
missingDependency = false;
pluginIterator.remove();
+ pluginsProvided.values().removeIf(s -> s.equals(plugin)); // Paper - remove provided plugins
softDependencies.remove(plugin);
dependencies.remove(plugin);
2022-07-21 21:53:04 +02:00
@@ -310,6 +311,7 @@ public final class SimplePluginManager implements PluginManager {
2021-10-01 12:53:24 +02:00
// We're clear to load, no more soft or hard dependencies left
File file = plugins.get(plugin);
pluginIterator.remove();
+ pluginsProvided.values().removeIf(s -> s.equals(plugin)); // Paper - remove provided plugins
missingDependency = false;
try {