0.8.6.28:
[sbcl.git] / src / code / toplevel.lisp
index 5aadeec..03f4c34 100644 (file)
     `(let ((,caught (catch '%end-of-the-world
                      (/show0 "inside CATCH '%END-OF-THE-WORLD")
                      ,@body)))
-       (/show0 "back from CATCH '%END-OF-THE-WORLD, flushing output")
-       (flush-standard-output-streams)
-       (/show0 "calling UNIX-EXIT")
-       (sb!unix:unix-exit ,caught))))
+      (/show0 "back from CATCH '%END-OF-THE-WORLD, flushing output")
+      (flush-standard-output-streams)
+      (sb!thread::terminate-session)
+      (/show0 "calling UNIX-EXIT")
+      (sb!unix:unix-exit ,caught))))
 \f
 ;;;; working with *CURRENT-ERROR-DEPTH* and *MAXIMUM-ERROR-DEPTH*
 
 (defun toplevel-init ()
 
   (/show0 "entering TOPLEVEL-INIT")
-  (setf sb!thread::*session-lock* (sb!thread:make-mutex :name "the terminal"))
+  (sb!thread::init-job-control)
   (sb!thread::get-foreground)
   (let (;; value of --sysinit option
        (sysinit nil)