X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcode%2Fcold-init.lisp;h=eb223cb1163e1444dca1e4c169fcf72d239eaefc;hb=447477e72bd4fe54e678a28bdcc4a2802797d6ed;hp=fd3ee813c4167cca85e6ba984cfc5bdbb7282679;hpb=444d2072bc52e60a41af62ee22e343e76109212f;p=sbcl.git diff --git a/src/code/cold-init.lisp b/src/code/cold-init.lisp index fd3ee81..eb223cb 100644 --- a/src/code/cold-init.lisp +++ b/src/code/cold-init.lisp @@ -104,6 +104,10 @@ *cold-init-complete-p* nil *type-system-initialized* nil) + ;; I'm not sure where eval is first called, so I put this first. + #!+sb-eval + (show-and-call sb!eval::!full-eval-cold-init) + (show-and-call thread-init-or-reinit) (show-and-call !typecheckfuns-cold-init) @@ -287,6 +291,7 @@ UNIX-like systems, UNIX-STATUS is used as the status code." (defun reinit () (setf *default-external-format* nil) + (setf sb!alien::*default-c-string-external-format* nil) (without-interrupts (without-gcing (os-cold-init-or-reinit) @@ -306,7 +311,12 @@ UNIX-like systems, UNIX-STATUS is used as the status code." (gc-reinit) ;; make sure TIME works correctly from saved cores (setf *internal-real-time-base-seconds* nil) + (setf *gc-run-time* 0) (foreign-reinit) + ;; If the debugger was disabled in the saved core, we need to + ;; re-disable ldb again. + (when (eq *invoke-debugger-hook* 'sb!debug::debugger-disabled-hook) + (sb!debug::disable-debugger)) (dolist (hook *init-hooks*) (with-simple-restart (continue "Skip this initialization hook.") (funcall hook))))