X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=tests%2Fkill-non-lisp-thread.impure.lisp;h=f7f88fd9b9068ac082c1dfc2a4398ad197aaf300;hb=d7875c296a4988e9f27e2776237884deb1984c62;hp=cecce9ed5ed8df70d6d2bd8200531b64a6cbeb33;hpb=f0da2f63aa0b4e6d4dbf884854a4bf2dfdd01fc0;p=sbcl.git diff --git a/tests/kill-non-lisp-thread.impure.lisp b/tests/kill-non-lisp-thread.impure.lisp index cecce9e..f7f88fd 100644 --- a/tests/kill-non-lisp-thread.impure.lisp +++ b/tests/kill-non-lisp-thread.impure.lisp @@ -11,7 +11,7 @@ ;;;; absolutely no warranty. See the COPYING and CREDITS files for ;;;; more information. -#-sb-thread +#+(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)))