Module: wine Branch: master Commit: ba6a6d57813fa7a7e1b06bd697f8ddd934adad7a URL: https://gitlab.winehq.org/wine/wine/-/commit/ba6a6d57813fa7a7e1b06bd697f8ddd...
Author: Alexandre Julliard julliard@winehq.org Date: Mon Jan 29 17:07:57 2024 +0100
ntdll: Move DbgUiRemoteBreakin() to the CPU backends.
---
dlls/ntdll/process.c | 12 ------------ dlls/ntdll/signal_arm.c | 20 ++++++++++++++++++++ dlls/ntdll/signal_arm64.c | 20 ++++++++++++++++++++ dlls/ntdll/signal_arm64ec.c | 20 ++++++++++++++++++++ dlls/ntdll/signal_i386.c | 21 +++++++++++++++++++++ dlls/ntdll/signal_x86_64.c | 21 +++++++++++++++++++++ 6 files changed, 102 insertions(+), 12 deletions(-)
diff --git a/dlls/ntdll/process.c b/dlls/ntdll/process.c index 87090781bbd..dcdb26f81d1 100644 --- a/dlls/ntdll/process.c +++ b/dlls/ntdll/process.c @@ -36,8 +36,6 @@ #include "ntdll_misc.h" #include "wine/exception.h"
-WINE_DEFAULT_DEBUG_CHANNEL(process); -
/****************************************************************************** * RtlGetCurrentPeb [NTDLL.@] @@ -702,16 +700,6 @@ NTSTATUS WINAPI DbgUiConvertStateChangeStructure( DBGUI_WAIT_STATE_CHANGE *state return STATUS_SUCCESS; }
-/*********************************************************************** - * DbgUiRemoteBreakin (NTDLL.@) - */ -void WINAPI DbgUiRemoteBreakin( void *arg ) -{ - TRACE( "\n" ); - if (NtCurrentTeb()->Peb->BeingDebugged) process_breakpoint(); - RtlExitUserThread( STATUS_SUCCESS ); -} - /*********************************************************************** * DbgUiIssueRemoteBreakin (NTDLL.@) */ diff --git a/dlls/ntdll/signal_arm.c b/dlls/ntdll/signal_arm.c index 6eb113fc2c6..80d722ccacb 100644 --- a/dlls/ntdll/signal_arm.c +++ b/dlls/ntdll/signal_arm.c @@ -1685,6 +1685,26 @@ void WINAPI process_breakpoint(void) } #endif
+/*********************************************************************** + * DbgUiRemoteBreakin (NTDLL.@) + */ +void WINAPI DbgUiRemoteBreakin( void *arg ) +{ + if (NtCurrentTeb()->Peb->BeingDebugged) + { + __TRY + { + DbgBreakPoint(); + } + __EXCEPT_ALL + { + /* do nothing */ + } + __ENDTRY + } + RtlExitUserThread( STATUS_SUCCESS ); +} + /********************************************************************** * DbgBreakPoint (NTDLL.@) */ diff --git a/dlls/ntdll/signal_arm64.c b/dlls/ntdll/signal_arm64.c index 24afe61533c..477f22029bd 100644 --- a/dlls/ntdll/signal_arm64.c +++ b/dlls/ntdll/signal_arm64.c @@ -1582,6 +1582,26 @@ __ASM_GLOBAL_FUNC( process_breakpoint, "mov w0, #0\n\t" /* ExceptionContinueExecution */ "ret" )
+/*********************************************************************** + * DbgUiRemoteBreakin (NTDLL.@) + */ +void WINAPI DbgUiRemoteBreakin( void *arg ) +{ + if (NtCurrentTeb()->Peb->BeingDebugged) + { + __TRY + { + DbgBreakPoint(); + } + __EXCEPT_ALL + { + /* do nothing */ + } + __ENDTRY + } + RtlExitUserThread( STATUS_SUCCESS ); +} + /********************************************************************** * DbgBreakPoint (NTDLL.@) */ diff --git a/dlls/ntdll/signal_arm64ec.c b/dlls/ntdll/signal_arm64ec.c index 97507d34c4f..8b4fd399c09 100644 --- a/dlls/ntdll/signal_arm64ec.c +++ b/dlls/ntdll/signal_arm64ec.c @@ -2016,6 +2016,26 @@ __ASM_GLOBAL_FUNC( "#process_breakpoint", "mov w0, #0\n\t" /* ExceptionContinueExecution */ "ret" )
+/*********************************************************************** + * DbgUiRemoteBreakin (NTDLL.@) + */ +void WINAPI DbgUiRemoteBreakin( void *arg ) +{ + if (NtCurrentTeb()->Peb->BeingDebugged) + { + __TRY + { + DbgBreakPoint(); + } + __EXCEPT_ALL + { + /* do nothing */ + } + __ENDTRY + } + RtlExitUserThread( STATUS_SUCCESS ); +} + /********************************************************************** * DbgBreakPoint (NTDLL.@) */ diff --git a/dlls/ntdll/signal_i386.c b/dlls/ntdll/signal_i386.c index ee20b5e011e..c4b0c84abfb 100644 --- a/dlls/ntdll/signal_i386.c +++ b/dlls/ntdll/signal_i386.c @@ -646,6 +646,27 @@ void WINAPI process_breakpoint(void) }
+/*********************************************************************** + * DbgUiRemoteBreakin (NTDLL.@) + */ +void WINAPI DbgUiRemoteBreakin( void *arg ) +{ + if (NtCurrentTeb()->Peb->BeingDebugged) + { + __TRY + { + DbgBreakPoint(); + } + __EXCEPT_ALL + { + /* do nothing */ + } + __ENDTRY + } + RtlExitUserThread( STATUS_SUCCESS ); +} + + /********************************************************************** * DbgBreakPoint (NTDLL.@) */ diff --git a/dlls/ntdll/signal_x86_64.c b/dlls/ntdll/signal_x86_64.c index 46357897369..be5851b8c31 100644 --- a/dlls/ntdll/signal_x86_64.c +++ b/dlls/ntdll/signal_x86_64.c @@ -1745,6 +1745,27 @@ void WINAPI process_breakpoint(void) #endif
+/*********************************************************************** + * DbgUiRemoteBreakin (NTDLL.@) + */ +void WINAPI DbgUiRemoteBreakin( void *arg ) +{ + if (NtCurrentTeb()->Peb->BeingDebugged) + { + __TRY + { + DbgBreakPoint(); + } + __EXCEPT_ALL + { + /* do nothing */ + } + __ENDTRY + } + RtlExitUserThread( STATUS_SUCCESS ); +} + + /********************************************************************** * DbgBreakPoint (NTDLL.@) */