From 8b78f68a7bb3dc97e9797d17317d5f30ec982ce6 Mon Sep 17 00:00:00 2001 From: Sean Whitton Date: Sat, 25 Sep 2021 16:46:41 -0700 Subject: use higher-numbered codes for change status, 1 for unhandled errors When SBCL fails to start up, such as when previously-loaded shared libraries cannot be found while trying to reinvoke a dumped image, it exits 1. We must avoid erroneously interpreting this as a successful attempt to make changes. Signed-off-by: Sean Whitton --- src/connection/fork.lisp | 2 +- src/connection/sbcl.lisp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) (limited to 'src/connection') diff --git a/src/connection/fork.lisp b/src/connection/fork.lisp index f55896d..2958a04 100644 --- a/src/connection/fork.lisp +++ b/src/connection/fork.lisp @@ -66,7 +66,7 @@ single-threaded context for the execution of POST-FORK.")) ((serious-condition (lambda (c) (trivial-backtrace:print-backtrace c :output *error-output*) - (uiop:quit 3)))) + (uiop:quit 1)))) ;; Handle the finaliser thread in older SBCL, before the change in ;; 2.1.8 to call *INIT-HOOKS* before starting system threads. #+consfigurator.connection.fork::older-sbcl diff --git a/src/connection/sbcl.lisp b/src/connection/sbcl.lisp index f487de3..9d488ca 100644 --- a/src/connection/sbcl.lisp +++ b/src/connection/sbcl.lisp @@ -62,7 +62,7 @@ recommended.")) (multiple-value-bind (program forms) (continue-deploy*-program remaining requirements) (multiple-value-bind (out err exit) (run :may-fail :input program *sbcl*) - (inform t (if (< exit 3) "done." "failed.") :fresh-line nil) + (inform t (if (member exit '(0 22 23)) "done." "failed.") :fresh-line nil) (when-let ((lines (lines out))) (inform t " Output was:" :fresh-line nil) (with-indented-inform (inform t lines))) -- cgit v1.2.3