Big merge: thanks alex and greatlord. Not a complete merge but most
[reactos.git] / reactos / ntoskrnl / ps / debug.c
index 51488a7..72e530d 100644 (file)
@@ -114,7 +114,9 @@ PspGetOrSetContextKernelRoutine(IN PKAPC Apc,
     PCONTEXT Context;
     PKTHREAD Thread;
     KPROCESSOR_MODE Mode;
+#ifdef _M_IX86
     PKTRAP_FRAME TrapFrame;
+#endif
     PAGED_CODE();
 
     /* Get the Context Structure */
@@ -124,6 +126,8 @@ PspGetOrSetContextKernelRoutine(IN PKAPC Apc,
     Mode = GetSetContext->Mode;
     Thread = Apc->SystemArgument2;
 
+#ifdef _M_IX86
+    if (TrapFrame->SegCs == KGDT_R0_CODE && Mode != KernelMode)
     /* Get the trap frame */
     TrapFrame = (PKTRAP_FRAME)((ULONG_PTR)KeGetCurrentThread()->InitialStack -
                                sizeof (FX_SAVE_AREA) - sizeof (KTRAP_FRAME));
@@ -147,6 +151,7 @@ PspGetOrSetContextKernelRoutine(IN PKAPC Apc,
                              Context->ContextFlags,
                              Mode);
     }
+#endif
 
     /* Notify the Native API that we are done */
     KeSetEvent(Event, IO_NO_INCREMENT, FALSE);