mirror of
https://github.com/reactos/reactos.git
synced 2025-07-27 07:12:55 +00:00
Only debug 1 thread at a time
svn path=/trunk/; revision=19225
This commit is contained in:
parent
abfe5c5390
commit
cfe927d8be
1 changed files with 8 additions and 0 deletions
|
@ -103,6 +103,8 @@ static PETHREAD GspRunThread; /* NULL means run all threads */
|
||||||
static PETHREAD GspDbgThread;
|
static PETHREAD GspDbgThread;
|
||||||
static PETHREAD GspEnumThread;
|
static PETHREAD GspEnumThread;
|
||||||
|
|
||||||
|
static FAST_MUTEX GspLock;
|
||||||
|
|
||||||
extern LIST_ENTRY PsActiveProcessHead;
|
extern LIST_ENTRY PsActiveProcessHead;
|
||||||
KD_PORT_INFORMATION GdbPortInfo = { 2, 115200, 0 }; /* FIXME hardcoded for COM2, 115200 baud */
|
KD_PORT_INFORMATION GdbPortInfo = { 2, 115200, 0 }; /* FIXME hardcoded for COM2, 115200 baud */
|
||||||
|
|
||||||
|
@ -1137,6 +1139,9 @@ KdpGdbEnterDebuggerException(PEXCEPTION_RECORD ExceptionRecord,
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
/* Can only debug 1 thread at a time... */
|
||||||
|
ExAcquireFastMutex(&GspLock);
|
||||||
|
|
||||||
/* Make sure we're debugging the current thread. */
|
/* Make sure we're debugging the current thread. */
|
||||||
if (NULL != GspDbgThread)
|
if (NULL != GspDbgThread)
|
||||||
{
|
{
|
||||||
|
@ -1390,6 +1395,7 @@ KdpGdbEnterDebuggerException(PEXCEPTION_RECORD ExceptionRecord,
|
||||||
GspDbgThread = NULL;
|
GspDbgThread = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ExReleaseFastMutex(&GspLock);
|
||||||
return kdContinue;
|
return kdContinue;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -1538,6 +1544,8 @@ KdpGdbStubInit(PKD_DISPATCH_TABLE WrapperTable,
|
||||||
|
|
||||||
if (BootPhase == 0)
|
if (BootPhase == 0)
|
||||||
{
|
{
|
||||||
|
ExInitializeFastMutex(&GspLock);
|
||||||
|
|
||||||
/* Write out the functions that we support for now */
|
/* Write out the functions that we support for now */
|
||||||
WrapperTable->KdpInitRoutine = KdpGdbStubInit;
|
WrapperTable->KdpInitRoutine = KdpGdbStubInit;
|
||||||
WrapperTable->KdpPrintRoutine = KdpGdbDebugPrint;
|
WrapperTable->KdpPrintRoutine = KdpGdbDebugPrint;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue