From 815cd503e272dea41e8fa7f43363c0a5a73680ab Mon Sep 17 00:00:00 2001 From: ThatGamerBlue Date: Fri, 19 Feb 2021 00:32:19 +0000 Subject: [PATCH] oprsepm: fix crash with empty config file --- .../plugins/OPRSExternalPluginManager.java | 17 +++++------------ 1 file changed, 5 insertions(+), 12 deletions(-) diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/OPRSExternalPluginManager.java b/runelite-client/src/main/java/net/runelite/client/plugins/OPRSExternalPluginManager.java index 3512d1a859..e1fc79ce71 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/OPRSExternalPluginManager.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/OPRSExternalPluginManager.java @@ -339,17 +339,11 @@ public class OPRSExternalPluginManager private void saveConfig() { - StringBuilder config = new StringBuilder(); + String config = updateManager.getRepositories().stream() + .map(r -> r.getId() + "|" + urlToStringEncoded(r.getUrl())) + .collect(Collectors.joining(";")); - for (UpdateRepository repository : updateManager.getRepositories()) - { - config.append(repository.getId()); - config.append("|"); - config.append(urlToStringEncoded(repository.getUrl())); - config.append(";"); - } - config.deleteCharAt(config.lastIndexOf(";")); - openOSRSConfig.setExternalRepositories(config.toString()); + openOSRSConfig.setExternalRepositories(config); } public void setWarning(boolean val) @@ -530,8 +524,7 @@ public class OPRSExternalPluginManager } @SuppressWarnings("unchecked") - private Plugin instantiate(List scannedPlugins, Class clazz, boolean init, boolean initConfig) - throws PluginInstantiationException + private Plugin instantiate(List scannedPlugins, Class clazz, boolean init, boolean initConfig) throws PluginInstantiationException { net.runelite.client.plugins.PluginDependency[] pluginDependencies = clazz.getAnnotationsByType(net.runelite.client.plugins.PluginDependency.class);