diff --git a/ArchiSteamFarm/IPC/Startup.cs b/ArchiSteamFarm/IPC/Startup.cs index f79c14346..128f87b9a 100644 --- a/ArchiSteamFarm/IPC/Startup.cs +++ b/ArchiSteamFarm/IPC/Startup.cs @@ -99,16 +99,19 @@ internal sealed class Startup { app.UseDefaultFiles(); #if !NETFRAMEWORK && !NETSTANDARD - string customPluginsPath = Path.Combine(Directory.GetCurrentDirectory(), SharedInfo.PluginsDirectory); - string pluginsPath = Directory.Exists(customPluginsPath) ? customPluginsPath : Path.Combine(SharedInfo.HomeDirectory, SharedInfo.PluginsDirectory); - List staticFilesDirectorys = new(); - foreach (string dir in Directory.EnumerateDirectories(pluginsPath)) { - string staticFilesDirectory = Path.Combine(dir, SharedInfo.WebsiteDirectory); - if (Directory.Exists(staticFilesDirectory)) { - staticFilesDirectorys.Add(staticFilesDirectory); - app.UseDefaultFiles("/" + Directory.GetParent(staticFilesDirectory)?.Name); + if (PluginsCore.ActivePlugins?.Count > 0) { + HashSet? assemblies = PluginsCore.LoadAssemblies(); + + if (assemblies != null) { + foreach (Assembly assembly in assemblies) { + string staticFilesDirectory = Path.Combine(Path.GetDirectoryName(assembly.Location)!, SharedInfo.WebsiteDirectory); + if (Directory.Exists(staticFilesDirectory)) { + staticFilesDirectorys.Add(staticFilesDirectory); + app.UseDefaultFiles("/" + Directory.GetParent(staticFilesDirectory)?.Name); + } + } } } #endif