mirror of
https://github.com/goatcorp/Dalamud.git
synced 2025-12-12 10:17:22 +01:00
boot: implement --unhandled-exception=stalldebug (#1690)
Using this option will stall the crashed thread until the debugger attaches, so that the newly attached debugger can be handed over the exception, enabling breaking at correct stack location. `--no-exception-handlers` injector option controlled whether Dalamud Crash Handler would intercept exceptions before. Those are now either `default` or `none` option for `--unhandled-exception`.
This commit is contained in:
parent
b85914c54c
commit
8ff4662f1f
8 changed files with 101 additions and 13 deletions
|
|
@ -32,6 +32,13 @@ struct DalamudStartInfo {
|
|||
};
|
||||
friend void from_json(const nlohmann::json&, LoadMethod&);
|
||||
|
||||
enum class UnhandledExceptionHandlingMode : int {
|
||||
Default,
|
||||
StallDebug,
|
||||
None,
|
||||
};
|
||||
friend void from_json(const nlohmann::json&, UnhandledExceptionHandlingMode&);
|
||||
|
||||
LoadMethod DalamudLoadMethod = LoadMethod::Entrypoint;
|
||||
std::string WorkingDirectory;
|
||||
std::string ConfigurationPath;
|
||||
|
|
@ -59,7 +66,7 @@ struct DalamudStartInfo {
|
|||
std::set<std::string> BootUnhookDlls{};
|
||||
|
||||
bool CrashHandlerShow = false;
|
||||
bool NoExceptionHandlers = false;
|
||||
UnhandledExceptionHandlingMode UnhandledException = UnhandledExceptionHandlingMode::Default;
|
||||
|
||||
friend void from_json(const nlohmann::json&, DalamudStartInfo&);
|
||||
void from_envvars();
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue