mirror of
https://github.com/reactos/reactos.git
synced 2024-10-18 23:18:56 +00:00
The GDB KD stub now correctly references/dereferences ETHREAD objects
svn path=/trunk/; revision=4522
This commit is contained in:
parent
5c6df46d27
commit
22f750cd54
|
@ -692,6 +692,9 @@ GspSetThread(PCHAR Request)
|
|||
{
|
||||
GspOutBuffer[0] = 'O';
|
||||
GspOutBuffer[1] = 'K';
|
||||
|
||||
if(GspRunThread) ObDereferenceObject(GspRunThread);
|
||||
|
||||
GspRunThread = ThreadInfo;
|
||||
}
|
||||
else
|
||||
|
@ -704,6 +707,9 @@ GspSetThread(PCHAR Request)
|
|||
{
|
||||
GspOutBuffer[0] = 'O';
|
||||
GspOutBuffer[1] = 'K';
|
||||
|
||||
if(GspDbgThread) ObDereferenceObject(GspDbgThread);
|
||||
|
||||
GspDbgThread = ThreadInfo;
|
||||
}
|
||||
else
|
||||
|
@ -779,6 +785,9 @@ GspQuery(PCHAR Request)
|
|||
if (GspFindThread (ptr, &ThreadInfo))
|
||||
{
|
||||
PCHAR String = GspThreadStates[ThreadInfo->Tcb.State];
|
||||
|
||||
ObDereferenceObject(ThreadInfo);
|
||||
|
||||
GspMem2Hex (String, &GspOutBuffer[0], strlen (String), FALSE);
|
||||
}
|
||||
}
|
||||
|
@ -840,6 +849,8 @@ GspQueryThreadStatus(PCHAR Request)
|
|||
|
||||
if (GspFindThread (ptr, &ThreadInfo))
|
||||
{
|
||||
ObDereferenceObject(ThreadInfo);
|
||||
|
||||
GspOutBuffer[0] = 'O';
|
||||
GspOutBuffer[1] = 'K';
|
||||
GspOutBuffer[2] = '\0';
|
||||
|
@ -1306,6 +1317,9 @@ KdGdbStubInit(ULONG Phase)
|
|||
|
||||
GspInitialized = TRUE;
|
||||
GspRunThread = PsGetCurrentThread();
|
||||
|
||||
ObReferenceObject(GspRunThread);
|
||||
|
||||
/* GspDbgThread = PsGetCurrentThread(); */
|
||||
GspDbgThread = NULL;
|
||||
GspEnumThread = NULL;
|
||||
|
|
Loading…
Reference in a new issue