Home | Info | Community | Development | myReactOS | Contact Us
Definition at line 95 of file irqobj.c.
Referenced by KeConnectInterrupt(), and KeDisconnectInterrupt().
{ DISPATCH_INFO Dispatch; PKINTERRUPT_ROUTINE Handler; /* Get vector data */ KiGetVectorDispatch(Interrupt->Vector, &Dispatch); /* Check if we're only disconnecting */ if (Type == NoConnect) { /* Set the handler to NoDispatch */ Handler = Dispatch.NoDispatch; } else { /* Get the right handler */ Handler = (Type == NormalConnect) ? Dispatch.InterruptDispatch: Dispatch.ChainedDispatch; ASSERT(Interrupt->FloatingSave == FALSE); /* Set the handler */ Interrupt->DispatchAddress = Handler; /* Read note in trap.s -- patching not needed since JMP is static */ /* Now set the final handler address */ ASSERT(Dispatch.FlatDispatch == NULL); Handler = (PVOID)&Interrupt->DispatchCode; } /* Register the interrupt */ KeRegisterInterruptHandler(Interrupt->Vector, Handler); }