;;;; 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)
(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"
(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)))