From 291befb166d694d94f7a5a4d08b84caff5eda438 Mon Sep 17 00:00:00 2001 From: PseudoKnight Date: Wed, 4 Sep 2019 19:19:03 -0700 Subject: [PATCH] Prevent extension startup in LangServ --- .../com/laytonsmith/tools/langserv/LangServ.java | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/laytonsmith/tools/langserv/LangServ.java b/src/main/java/com/laytonsmith/tools/langserv/LangServ.java index 6d7533051..799c6dacc 100644 --- a/src/main/java/com/laytonsmith/tools/langserv/LangServ.java +++ b/src/main/java/com/laytonsmith/tools/langserv/LangServ.java @@ -12,6 +12,7 @@ import com.laytonsmith.core.LogLevel; import com.laytonsmith.core.MSLog; import com.laytonsmith.core.MethodScriptCompiler; +import com.laytonsmith.core.MethodScriptFileLocations; import com.laytonsmith.core.ParseTree; import com.laytonsmith.core.Profiles; import com.laytonsmith.core.Security; @@ -31,6 +32,7 @@ import com.laytonsmith.core.events.EventList; import com.laytonsmith.core.exceptions.ConfigCompileException; import com.laytonsmith.core.exceptions.ConfigCompileGroupException; +import com.laytonsmith.core.extensions.ExtensionManager; import com.laytonsmith.core.functions.DocumentLinkProvider; import com.laytonsmith.core.functions.Function; import com.laytonsmith.core.functions.FunctionBase; @@ -163,6 +165,11 @@ public ArgumentParser getArgumentParser() { .setArgType(ArgumentParser.ArgumentBuilder.BuilderTypeNonFlag.ARRAY_OF_STRINGS)); } + @Override + public boolean startupExtensionManager() { + return false; + } + @Override @SuppressWarnings("UseSpecificCatch") public void execute(ArgumentParser.ArgumentParserResults parsedArgs) throws Exception { @@ -174,6 +181,10 @@ public void execute(ArgumentParser.ArgumentParserResults parsedArgs) throws Exce port = parsedArgs.getNumberArgument("port").intValue(); } + ExtensionManager.AddDiscoveryLocation(MethodScriptFileLocations.getDefault().getExtensionsDirectory()); + ExtensionManager.Cache(MethodScriptFileLocations.getDefault().getExtensionCacheDirectory()); + ExtensionManager.Initialize(ClassDiscovery.getDefaultInstance()); + LangServ langserv = new LangServ(useStdio); langserv.log("Starting up Language Server: " + parsedArgs.getRawArguments(), LogLevel.INFO); try { @@ -503,7 +514,7 @@ public void initialized(InitializedParams params) { File workspace = new File(f.getUri().replaceFirst("file://", "")); try { FileUtil.recursiveFind(workspace, (File f1) -> { - if(f1.isFile() && f1.getName().endsWith(".ms") || f1.getName().endsWith(".msa")) { + if(f1.isFile() && (f1.getName().endsWith(".ms") || f1.getName().endsWith(".msa"))) { doCompilation(null, lowPriorityProcessors, f1.toURI().toString(), false); } });