From 145d1173ae5b572cf2ad7a85056fd986d0b35e08 Mon Sep 17 00:00:00 2001
From: wlott <wlott>
Date: Thu, 14 Mar 1991 22:00:04 +0000
Subject: [PATCH] Added support for trap breakpoints.  Removed a debugging
 write that somehow got left behind.

---
 ldb/interrupt.c | 11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)

diff --git a/ldb/interrupt.c b/ldb/interrupt.c
index d043e83e1..603ae445f 100644
--- a/ldb/interrupt.c
+++ b/ldb/interrupt.c
@@ -1,4 +1,4 @@
-/* $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/ldb/Attic/interrupt.c,v 1.23 1991/02/16 01:00:26 wlott Exp $ */
+/* $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/ldb/Attic/interrupt.c,v 1.24 1991/03/14 22:00:04 wlott Exp $ */
 
 /* Interrupt handing magic. */
 
@@ -233,8 +233,6 @@ struct sigcontext *context;
     /* Allow signals again. */
     sigsetmask(context->sc_mask);
 
-    write(1, "Calling handler.\n", 17);
-
     if (LowtagOf(handler.lisp) == type_EvenFixnum ||
         LowtagOf(handler.lisp) == type_OddFixnum)
         (*handler.c)(signal, code, context);
@@ -308,6 +306,13 @@ static sigtrap_handler(signal, code, context)
 	internal_error(signal, code, context, code==trap_Cerror);
 	break;
 
+      case trap_Breakpoint:
+	sigsetmask(context->sc_mask);
+	fake_foreign_function_call(context);
+	handle_breakpoint(signal, code, context);
+	undo_fake_foreign_function_call(context);
+	break;
+
       default:
 	handle_now(signal, code, context);
 	break;
-- 
GitLab