feat(inject): Use new exception handler with stacktraces

Adjust inject to utilize the new feature. This also
requires including the dwarfstack.dll in all distribution
packages.
This commit is contained in:
icex2
2024-01-29 22:02:12 +01:00
parent a70f7c625a
commit e1bccc4654
4 changed files with 15 additions and 2 deletions
+3
View File
@@ -1,11 +1,14 @@
exes += inject
imps += dwarfstack
ldflags_inject := \
-mconsole \
-lpsapi \
-ldbghelp \
libs_inject := \
util \
dwarfstack \
src_inject := \
main.c \
+2 -2
View File
@@ -11,10 +11,10 @@
#include "inject/debugger.h"
#include "inject/logger.h"
#include "util/debug.h"
#include "util/log.h"
#include "util/mem.h"
#include "util/proc.h"
#include "util/signal.h"
#include "util/str.h"
#define MM_ALLOCATION_GRANULARITY 0x10000
@@ -271,7 +271,7 @@ static uint32_t debugger_loop()
"EXCEPTION_DEBUG_EVENT(pid %ld, tid %ld): x%s 0x%p",
de.dwProcessId,
de.dwThreadId,
signal_exception_code_to_str(
debug_exception_code_to_str(
de.u.Exception.ExceptionRecord.ExceptionCode),
de.u.Exception.ExceptionRecord.ExceptionAddress);
+2
View File
@@ -16,6 +16,7 @@
#include "inject/version.h"
#include "util/cmdline.h"
#include "util/debug.h"
#include "util/log.h"
#include "util/mem.h"
#include "util/os.h"
@@ -166,6 +167,7 @@ int main(int argc, char **argv)
os_version_log();
debug_init();
signal_exception_handler_init();
// Cleanup remote process on CTRL+C
signal_register_shutdown_handler(signal_shutdown_handler);