runelite-client: fix not initializing default config

Config manager scans plugins from the plugin manager for configurations
This commit is contained in:
Adam
2017-11-19 12:57:11 -05:00
parent 17d461b4d1
commit b6c90b33a6
2 changed files with 7 additions and 10 deletions

View File

@@ -43,7 +43,6 @@ import java.io.FileInputStream;
import java.io.FileWriter; import java.io.FileWriter;
import java.io.IOException; import java.io.IOException;
import java.io.InputStreamReader; import java.io.InputStreamReader;
import java.util.List;
import java.util.concurrent.ScheduledExecutorService; import java.util.concurrent.ScheduledExecutorService;
import javax.imageio.ImageIO; import javax.imageio.ImageIO;
import javax.inject.Singleton; import javax.inject.Singleton;
@@ -61,7 +60,6 @@ import net.runelite.client.config.ConfigManager;
import net.runelite.client.events.SessionClose; import net.runelite.client.events.SessionClose;
import net.runelite.client.events.SessionOpen; import net.runelite.client.events.SessionOpen;
import net.runelite.client.menus.MenuManager; import net.runelite.client.menus.MenuManager;
import net.runelite.client.plugins.Plugin;
import net.runelite.client.plugins.PluginManager; import net.runelite.client.plugins.PluginManager;
import net.runelite.client.ui.ClientUI; import net.runelite.client.ui.ClientUI;
import net.runelite.http.api.account.AccountClient; import net.runelite.http.api.account.AccountClient;
@@ -168,14 +166,14 @@ public class RuneLite
// Load the plugins, but does not start them yet. // Load the plugins, but does not start them yet.
// This will initialize configuration // This will initialize configuration
List<Plugin> plugins = pluginManager.loadCorePlugins(); pluginManager.loadCorePlugins();
// Plugins have provided their config, so set default config // Plugins have provided their config, so set default config
// to main settings // to main settings
configManager.loadDefault(); configManager.loadDefault();
// Start plugins // Start plugins
pluginManager.startCorePlugins(plugins); pluginManager.startCorePlugins();
// Load the session, including saved configuration // Load the session, including saved configuration
loadSession(); loadSession();

View File

@@ -70,13 +70,14 @@ public class PluginManager
private final List<Plugin> plugins = new CopyOnWriteArrayList<>(); private final List<Plugin> plugins = new CopyOnWriteArrayList<>();
public List<Plugin> loadCorePlugins() throws IOException public void loadCorePlugins() throws IOException
{ {
return scanAndInstantiate(getClass().getClassLoader(), PLUGIN_PACKAGE); plugins.addAll(scanAndInstantiate(getClass().getClassLoader(), PLUGIN_PACKAGE));
} }
public void startCorePlugins(List<Plugin> scannedPlugins) public void startCorePlugins()
{ {
List<Plugin> scannedPlugins = new ArrayList<>(plugins);
for (Plugin plugin : scannedPlugins) for (Plugin plugin : scannedPlugins)
{ {
try try
@@ -86,10 +87,8 @@ public class PluginManager
catch (PluginInstantiationException ex) catch (PluginInstantiationException ex)
{ {
logger.warn("Unable to start plugin {}", plugin.getClass().getSimpleName(), ex); logger.warn("Unable to start plugin {}", plugin.getClass().getSimpleName(), ex);
continue; plugins.remove(plugin);
} }
plugins.add(plugin);
} }
} }