mirror of
https://github.com/reactos/reactos.git
synced 2025-01-05 19:23:50 +08:00
[NTOS:MM] Do not queue debugger events after notifying process exit. CORE-13393
Patch suggested by Thomas. svn path=/trunk/; revision=74969
This commit is contained in:
parent
8ad0eae687
commit
8d15eb4dea
@ -2104,7 +2104,7 @@ NTAPI
|
||||
MiRosUnmapViewOfSection(
|
||||
IN PEPROCESS Process,
|
||||
IN PVOID BaseAddress,
|
||||
IN ULONG Flags
|
||||
IN BOOLEAN SkipDebuggerNotify
|
||||
);
|
||||
|
||||
VOID
|
||||
|
@ -834,7 +834,7 @@ MiUnmapViewOfSection(IN PEPROCESS Process,
|
||||
if ((MemoryArea) && (MemoryArea->Type != MEMORY_AREA_OWNED_BY_ARM3))
|
||||
{
|
||||
/* Call Mm API */
|
||||
return MiRosUnmapViewOfSection(Process, BaseAddress, Flags);
|
||||
return MiRosUnmapViewOfSection(Process, BaseAddress, Process->ProcessExiting);
|
||||
}
|
||||
|
||||
/* Check if we should attach to the process */
|
||||
|
@ -545,7 +545,7 @@ MiRosCleanupMemoryArea(
|
||||
|
||||
if (MemoryArea->Type == MEMORY_AREA_SECTION_VIEW)
|
||||
{
|
||||
Status = MiRosUnmapViewOfSection(Process, BaseAddress, 0);
|
||||
Status = MiRosUnmapViewOfSection(Process, BaseAddress, Process->ProcessExiting);
|
||||
}
|
||||
else if (MemoryArea->Type == MEMORY_AREA_CACHE)
|
||||
{
|
||||
|
@ -4142,7 +4142,7 @@ NTSTATUS
|
||||
NTAPI
|
||||
MiRosUnmapViewOfSection(IN PEPROCESS Process,
|
||||
IN PVOID BaseAddress,
|
||||
IN ULONG Flags)
|
||||
IN BOOLEAN SkipDebuggerNotify)
|
||||
{
|
||||
NTSTATUS Status;
|
||||
PMEMORY_AREA MemoryArea;
|
||||
@ -4230,7 +4230,7 @@ MiRosUnmapViewOfSection(IN PEPROCESS Process,
|
||||
MmUnlockAddressSpace(AddressSpace);
|
||||
|
||||
/* Notify debugger */
|
||||
if (ImageBaseAddress) DbgkUnMapViewOfSection(ImageBaseAddress);
|
||||
if (ImageBaseAddress && !SkipDebuggerNotify) DbgkUnMapViewOfSection(ImageBaseAddress);
|
||||
|
||||
return(STATUS_SUCCESS);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user