diff --git a/Dalamud.Injector/EntryPoint.cs b/Dalamud.Injector/EntryPoint.cs index 0a98d7dcd..3a641f48d 100644 --- a/Dalamud.Injector/EntryPoint.cs +++ b/Dalamud.Injector/EntryPoint.cs @@ -61,6 +61,9 @@ namespace Dalamud.Injector var process = GetProcess(args.ElementAtOrDefault(1)); var startInfo = GetStartInfo(args.ElementAtOrDefault(2), process); + // TODO: XL does not set this!!! we need to keep this line here for now, otherwise we crash in the Dalamud entrypoint + startInfo.WorkingDirectory = Directory.GetCurrentDirectory(); + // This seems to help with the STATUS_INTERNAL_ERROR condition Thread.Sleep(1000); @@ -243,7 +246,7 @@ namespace Dalamud.Injector startInfo = new DalamudStartInfo { - WorkingDirectory = Directory.GetCurrentDirectory(), + WorkingDirectory = null, ConfigurationPath = Path.Combine(xivlauncherDir, "dalamudConfig.json"), PluginDirectory = Path.Combine(xivlauncherDir, "installedPlugins"), DefaultPluginDirectory = Path.Combine(xivlauncherDir, "devPlugins"), diff --git a/Dalamud/DalamudStartInfo.cs b/Dalamud/DalamudStartInfo.cs index b04e5d3cb..df22b8824 100644 --- a/Dalamud/DalamudStartInfo.cs +++ b/Dalamud/DalamudStartInfo.cs @@ -14,7 +14,7 @@ namespace Dalamud /// /// Gets the working directory of the XIVLauncher installations. /// - public string WorkingDirectory { get; init; } + public string WorkingDirectory { get; set; } /// /// Gets the path to the configuration file.