From 66c2ae5d380bd497ad40b5ec05a559183b817b26 Mon Sep 17 00:00:00 2001 From: mainzelm Date: Thu, 18 Jul 2002 08:04:34 +0000 Subject: [PATCH] Check enabled interrupts before calling the handler. --- scsh/sighandlers.scm | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/scsh/sighandlers.scm b/scsh/sighandlers.scm index bc05a13..66856ef 100644 --- a/scsh/sighandlers.scm +++ b/scsh/sighandlers.scm @@ -196,9 +196,11 @@ (define (deliver-interrupts) (let lp ((last ((structure-ref sigevents most-recent-sigevent)))) - (let ((event ((structure-ref sigevents next-sigevent-set) - last full-interrupt-set))) - (call-interrupt-handler ((structure-ref sigevents sigevent-type) event)) + (let* ((event ((structure-ref sigevents next-sigevent-set) + last full-interrupt-set)) + (interrupt ((structure-ref sigevents sigevent-type) event))) + (if (interrupt-enabled? interrupt (enabled-interrupts)) + (call-interrupt-handler interrupt)) (lp event)))) ;;; I am ashamed to say the 33 below is completely bogus.