srkizer
9092e36b33
Reduce usage of exceptions from Boot ( #2373 )
...
* wip
* make pretty
* Remove CRT version check from IM
* fix
* Simplify IsDebuggerPresent hook
2025-08-15 00:02:32 -07:00
srkizer
b09a1cde0a
Skip if msvcrt dll does not have version info ( #2363 )
2025-08-10 18:49:41 +02:00
goaaats
6c1e538da5
Don't check CRT version on wine
2025-08-10 17:38:19 +02:00
srkizer
8fcf633f02
Check if CRT version is at least 14.40.33816.0 ( #2361 )
...
* Check if CRT version is at least 14.40.33816.0
* Fix ULD path
* Remove debugging code
2025-08-10 16:56:22 +02:00
goaaats
2951dc93ec
Merge master
2025-04-03 21:14:12 +02:00
goaaats
fb61d72fae
Remove legacy corrupted state exceptions entirely
2025-03-28 00:52:06 +01:00
goaaats
97add3fc90
Globally disable legacy corrupted state exceptions for now
2025-03-12 23:23:31 +01:00
goaaats
b21a0c9298
Add console argument/env var to disable legacy corrupted state exceptions policy
2025-03-09 19:34:26 +01:00
Soreepeong
6bf264acf0
Support DirectX debugging injector cmdline
2024-07-19 18:13:37 +09:00
srkizer
8ff4662f1f
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`.
2024-04-20 21:20:11 -07:00
Soreepeong
7e78b6293b
Make RewriteRemoteEntryPointW report IErrorInfo, VirtualProtectEx before WriteProcessMemory
2024-02-13 08:35:51 +09:00
srkizer
0cc28fb39d
Changes to Dalamud Boot DLL so that it works in WINE ( #1111 )
...
* Changes to Dalamud Boot DLL so that it works in WINE
* Make asm clearer
2024-02-12 12:56:38 -08:00
marzent
386e5f245c
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
2024-02-11 13:01:34 -08:00
srkizer
5777745ab3
Add injector option to not apply any exception handlers ( #1541 )
...
* Add injector option to not apply any exception handlers
* Log as warning if NoExceptionHandlers is set
2023-12-07 05:06:39 +00:00
Kaz Wolfe
2acba2b81f
Update Dalamud.Boot to use extra import checks
...
- Ports extra import checks to Dalamud Boot
- Renames is_running_on_linux to is_running_on_wine
- Update relevant logging string for VEH
2023-09-12 17:07:46 -07:00
kizer
58ceb1dc87
Offer to restart game from VEH exception handler ( #936 )
2022-07-26 21:14:48 +02:00
goat
805a887f2e
feat: add minidump writer
2022-07-24 18:49:46 +02:00
marzent
78172f06d1
Change Dalamud.Boot abort behaviour on detach ( #925 )
2022-07-23 15:26:46 +02:00
kizer
8e7f370ddd
Load services asynchronously whenever possible ( #893 )
2022-06-24 22:12:51 +02:00
goaaats
8744e82979
feat: make ETW configurable, doesn't actually do anything yet because we're stuck on .NET 5
2022-06-22 16:58:53 +02:00
goaaats
72b18dd2b5
chore: don't wait for game window in Dalamud.Boot
2022-06-20 22:25:15 +02:00
goaaats
92518e22b0
chore: indicate which messagebox we are waiting for
2022-06-20 18:21:09 +02:00
goaaats
192396abdc
feat: set boot defaults via json
2022-06-19 12:24:18 +02:00
goaaats
5c3c22490d
feat: get boot log path from DalamudStartInfo
2022-06-19 12:17:37 +02:00
kizer
ce49874935
Write Dalamud.Boot log to TEMP, then CWD ( #886 )
2022-06-19 11:42:41 +02:00
kizer
04cdd3338f
Make more stuff loggable ( #885 )
2022-06-17 21:06:38 +02:00
kizer
2f4c0bbc97
Update logging to reflect msvc updates on std::format ( #883 )
2022-06-17 10:28:10 +02:00
kizer
71f3680388
Fix nullptr problems ( #878 )
2022-06-04 13:45:22 +02:00
kizer
c5f84eb27d
Add option to use global import hook instead of MinHook for OpenProcess ( #860 )
2022-05-30 17:54:29 +02:00
goaaats
d0213ebcfd
chore: more logging
2022-05-29 20:08:21 +02:00
kizer
b6237267ce
Workaround nuke not autoaddling dep lib ( #859 )
...
* #pragma comment(lib, <minhook lib>)
* Fix logging path, and make common files not use pch
* Move lib import to vcproj from pragma
* a
* Make copy of vcxproj for minhook from submodule to lib dir
* nuke it
* .
2022-05-29 19:18:00 +02:00
kizer
dbb0cb3d56
Use MinHook on cpp side too ( #858 )
...
Co-authored-by: goaaats <goatsdev@protonmail.com>
2022-05-29 17:33:57 +02:00
goaaats
a7540d0fef
feat: write Dalamud.Boot logs to dalamud.boot.log
2022-05-29 17:25:29 +02:00
kizer
75de126c9d
Implement xiv fixes into Dalamud.Boot ( #857 )
2022-05-28 19:11:03 +02:00
goaaats
d2335274ee
feat: delay main thread continuation until GameFixes are applied
...
This is a temporary workaround until we have infrastructure to intercept winapi in C++
2022-05-27 14:12:15 +02:00
goaaats
3cf47f7ec4
chore: make DALAMUD_WAIT_DEBUGGER actually freeze process
2022-05-26 00:46:58 +02:00
goaaats
524d100bdc
chore: change VEH env var, add var to enable full dumps
2022-05-18 18:33:34 +02:00
kizer
9a38a9470c
Fix inject problems ( #820 )
...
* CoreCLR: resolve and load nethost on demand instead of requiring it on load
* Remove nethost loading from C# side
* Added option to not chain Process.Dispose; see for last error only if result is empty
2022-04-25 10:13:32 +02:00
goaaats
cac814905e
Revert "chore: turn VEH back on for everyone"
...
This reverts commit ffaf0febb3 .
2021-12-25 03:36:38 +01:00
goaaats
ffaf0febb3
chore: turn VEH back on for everyone
2021-12-24 13:06:19 +01:00
goaaats
b612711ef6
chore: only enable VEH on staging
2021-12-24 05:00:57 +01:00
Soreepeong
e64cc7e687
Print dotnet stack trace on veh error msgbox, and use precompiled headers.
2021-12-24 12:23:23 +09:00
goaaats
97cf742819
feat: DALAMUD_HAVE_VEH env var, disable by default
2021-12-23 16:11:46 +01:00
goaaats
78efd885b7
fix: add is_veh_enabled func
2021-12-23 15:57:26 +01:00
goaaats
ca1f5baee4
fix: use GetEnvironmentVariableW instead of getenv
2021-12-23 15:48:04 +01:00
goaaats
04bf21af78
chore: turn VEH back on, add DALAMUD_NO_VEH env var
2021-12-23 15:39:37 +01:00
goaaats
057052e12c
fix: remove VEH for now, yet again
2021-12-09 01:24:00 +01:00
goat
e9be05f6bf
feat: re-VEH
2021-11-04 12:50:29 +01:00
goat
810909fab2
fix: temporary un-VEH-ing
2021-11-04 12:41:46 +01:00
pohky
6e391779f8
Update dllmain.cpp
...
- check XL_WINEONLINUX env var
2021-11-01 22:09:47 +01:00