chore: always ignore default if env vars are predefined

This commit is contained in:
goaaats 2022-06-03 17:56:40 +02:00
parent 0c59f65aef
commit 9d538d3b2a
No known key found for this signature in database
GPG key ID: 49E2AA8C6A76498B

View file

@ -55,14 +55,9 @@ namespace Dalamud.Injector
} }
// Set boot defaults // Set boot defaults
var prevFixList = Environment.GetEnvironmentVariable("DALAMUD_GAMEFIX_LIST"); SetEnvDefaultIfNotExist("DALAMUD_GAMEFIX_LIST", "prevent_devicechange_crashes,disable_game_openprocess_access_check,redirect_openprocess");
if (string.IsNullOrWhiteSpace(prevFixList)) SetEnvDefaultIfNotExist("DALAMUD_DOTNET_OPENPROCESS_HOOKMODE", "0");
{ SetEnvDefaultIfNotExist("DALAMUD_UNHOOK_DLLS", "kernel32.dll,ntdll.dll,user32.dll");
Environment.SetEnvironmentVariable("DALAMUD_GAMEFIX_LIST", "prevent_devicechange_crashes,disable_game_openprocess_access_check,redirect_openprocess");
}
Environment.SetEnvironmentVariable("DALAMUD_DOTNET_OPENPROCESS_HOOKMODE", "0");
Environment.SetEnvironmentVariable("DALAMUD_UNHOOK_DLLS", "kernel32.dll,ntdll.dll,user32.dll");
DalamudStartInfo startInfo = null; DalamudStartInfo startInfo = null;
if (args.Count == 1) if (args.Count == 1)
@ -111,6 +106,15 @@ namespace Dalamud.Injector
} }
} }
private static void SetEnvDefaultIfNotExist(string name, string value)
{
var prevValue = Environment.GetEnvironmentVariable(name);
if (string.IsNullOrWhiteSpace(prevValue))
{
Environment.SetEnvironmentVariable(name, value);
}
}
private static string GetLogPath(string filename) private static string GetLogPath(string filename)
{ {
var baseDirectory = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location); var baseDirectory = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);