From ae921ed9bb65b77bc92a4e1e6e74c09507e5a3ef Mon Sep 17 00:00:00 2001 From: David Welch Date: Sun, 20 Jul 2003 12:14:46 +0000 Subject: [PATCH] - Checked in Petr Matousek's APC fix. svn path=/trunk/; revision=5183 --- reactos/ntoskrnl/ke/i386/irq.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/reactos/ntoskrnl/ke/i386/irq.c b/reactos/ntoskrnl/ke/i386/irq.c index 9e0c2f6898c..634bb6bc76f 100644 --- a/reactos/ntoskrnl/ke/i386/irq.c +++ b/reactos/ntoskrnl/ke/i386/irq.c @@ -16,7 +16,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ -/* $Id: irq.c,v 1.33 2003/07/11 01:23:15 royce Exp $ +/* $Id: irq.c,v 1.34 2003/07/20 12:14:46 dwelch Exp $ * * PROJECT: ReactOS kernel * FILE: ntoskrnl/ke/i386/irq.c @@ -526,6 +526,13 @@ KiInterruptDispatch (ULONG irq, PKIRQ_TRAPFRAME Trapframe) __asm__("cli\n\t"); HalEndSystemInterrupt (old_level, 0); + if (old_level==PASSIVE_LEVEL && CurrentThread!=NULL && + CurrentThread->Alerted[1] != 0 && + CurrentThread->TrapFrame->Cs != KERNEL_CS) + { + KiDeliverNormalApc(); + } + assert(KeGetCurrentThread() == CurrentThread); if (NULL != CurrentThread && CurrentThread->TrapFrame == &KernelTrapFrame) {