X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=tests%2Fkill-non-lisp-thread.impure.lisp;h=f7f88fd9b9068ac082c1dfc2a4398ad197aaf300;hb=062283b901155792f65775491aea51481c56faaa;hp=29680cc263f20991e355de1887cdaecbfd0cf032;hpb=01b41fdd69d197da85f86a2e4f8971f3ef9dda82;p=sbcl.git diff --git a/tests/kill-non-lisp-thread.impure.lisp b/tests/kill-non-lisp-thread.impure.lisp index 29680cc..f7f88fd 100644 --- a/tests/kill-non-lisp-thread.impure.lisp +++ b/tests/kill-non-lisp-thread.impure.lisp @@ -11,8 +11,8 @@ ;;;; absolutely no warranty. See the COPYING and CREDITS files for ;;;; more information. -#-sb-thread -(sb-ext:quit :unix-status 104) +#+(or :win32 (not :sb-thread)) +(sb-ext:exit :code 104) (use-package :sb-alien) @@ -21,7 +21,6 @@ (output (with-output-to-string (s) (setf proc (run-program program arguments - :environment (test-util::test-env) :output s))))) (unless (zerop (process-exit-code proc)) (error "Bad exit code: ~S~%Output:~% ~S" @@ -42,6 +41,12 @@ (push (lambda () (setq receivedp t)) (sb-thread::thread-interruptions sb-thread:*current-thread*)) + #+sb-thruption + ;; On sb-thruption builds, the usual resignalling of SIGPIPE will + ;; work without problems, but the signal handler won't ordinarily + ;; think that there's anything to be done. Since we're poking at + ;; INTERRUPT-THREAD internals anyway, let's help it along. + (setf sb-unix::*thruption-pending* t) (kill-non-lisp-thread) (sleep 1) (assert receivedp)))