mirror of
https://github.com/reactos/reactos.git
synced 2025-02-23 17:05:46 +00:00
[NTOSKRNL]
- Fix RtlWalkFrameChain to do usermode back traces for threads that are not system threads. Also use _SEH2_YIELD when leaving the SEH block. svn path=/trunk/; revision=47066
This commit is contained in:
parent
0409ef75e8
commit
8dc269c258
1 changed files with 2 additions and 3 deletions
|
@ -317,7 +317,7 @@ RtlWalkFrameChain(OUT PVOID *Callers,
|
|||
&StackBegin,
|
||||
&StackEnd);
|
||||
if (!Result) return 0;
|
||||
}
|
||||
}
|
||||
|
||||
/* Use a SEH block for maximum protection */
|
||||
_SEH2_TRY
|
||||
|
@ -331,12 +331,11 @@ RtlWalkFrameChain(OUT PVOID *Callers,
|
|||
|
||||
/* Make sure we can trust the TEB and trap frame */
|
||||
if (!(Teb) ||
|
||||
!(Thread->SystemThread) ||
|
||||
(KeIsAttachedProcess()) ||
|
||||
(KeGetCurrentIrql() >= DISPATCH_LEVEL))
|
||||
{
|
||||
/* Invalid or unsafe attempt to get the stack */
|
||||
return 0;
|
||||
_SEH2_YIELD(return 0;)
|
||||
}
|
||||
|
||||
/* Get the stack limits */
|
||||
|
|
Loading…
Reference in a new issue