Make the crash handler work on wine properly (#1636)

* add LoadMethod to DalamudStartInfo
* add to_wstring utility function
* append full injector launch args for VEH
* remove usage of std::chrono::zoned_time
* fix injector arguments in crash handler restart
* enable VEH on wine
* remove dead wine detection code
* write out tspack with std::fstream
* fix off-by-one error in get_window_string()
* remove usage of std::chrono when writing tspack
* do not deadlock on crashing DalamudCrashHandler
This commit is contained in:
marzent 2024-02-11 22:01:34 +01:00 committed by GitHub
parent 16bc6b86e5
commit 386e5f245c
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
11 changed files with 148 additions and 77 deletions

View file

@ -17,6 +17,11 @@ public record DalamudStartInfo
// ignored
}
/// <summary>
/// Gets or sets the Dalamud load method.
/// </summary>
public LoadMethod LoadMethod { get; set; }
/// <summary>
/// Gets or sets the working directory of the XIVLauncher installations.
/// </summary>

View file

@ -0,0 +1,17 @@
namespace Dalamud.Common;
/// <summary>
/// Enum describing the method Dalamud has been loaded.
/// </summary>
public enum LoadMethod
{
/// <summary>
/// Load Dalamud by rewriting the games entrypoint.
/// </summary>
Entrypoint,
/// <summary>
/// Load Dalamud via DLL-injection.
/// </summary>
DllInject,
}