X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=tests%2Fkill-non-lisp-thread.impure.lisp;h=f59e7f4b38d5d7036253ae95a7755154d66dbf97;hb=91ab8b634b86ea43a985d35c7fa58e7432f1a28a;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..f59e7f4 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) @@ -42,6 +42,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)))