From aede5ac0bbafc2ec5ef5044a51e47a9e10963d54 Mon Sep 17 00:00:00 2001 From: Gabor Melis Date: Wed, 12 Oct 2005 08:56:04 +0000 Subject: [PATCH] 0.9.5.44: oops * didn't want to commit everything --- src/code/target-signal.lisp | 11 +---------- tests/threads.impure.lisp | 27 ++++++--------------------- version.lisp-expr | 2 +- 3 files changed, 8 insertions(+), 32 deletions(-) diff --git a/src/code/target-signal.lisp b/src/code/target-signal.lisp index c6acf9d..09d8653 100644 --- a/src/code/target-signal.lisp +++ b/src/code/target-signal.lisp @@ -100,16 +100,7 @@ (defun sigint-%break (format-string &rest format-arguments) (flet ((break-it () (apply #'%break 'sigint format-string format-arguments))) - (let ((done-p nil)) - (loop while (not done-p) - do - (setq done-p t) - ;; what if I type interrupt-thread at the debugger? - (handler-case - (sb!thread:interrupt-thread (sb!thread::foreground-thread) - #'break-it) - (sb!thread:interrupt-thread-error () - (setq done-p nil))))))) + (sb!thread:interrupt-thread (sb!thread::foreground-thread) #'break-it))) (eval-when (:compile-toplevel :execute) (sb!xc:defmacro define-signal-handler (name diff --git a/tests/threads.impure.lisp b/tests/threads.impure.lisp index 4c45258..d3cc162 100644 --- a/tests/threads.impure.lisp +++ b/tests/threads.impure.lisp @@ -488,31 +488,16 @@ (with-test (:name (:thread-start :dynamic-values-and-gc)) (let ((gc-thread (sb-thread:make-thread (lambda () - (loop (sleep (random 0.01)) + (loop (sleep (random 0.2)) (sb-ext:gc :full t)))))) (wait-for-threads - (loop for i below 30000000 + (loop for i below 3000 when (zerop (mod i 30)) - do (princ ".") (force-output) + do (princ ".") collect - (let ((*a* (lambda ())) - (*b* (lambda ())) - (*c* (lambda ())) - (*d* (lambda ())) - (*e* (lambda ())) - (*f* (lambda ())) - (*g* (lambda ())) - (*h* (lambda ()))) - (declare (special *a* *b* *c* *d* *e* *f* *g* *h*)) - (sb-thread:make-thread (lambda () - (functionp *a*) - (functionp *b*) - (functionp *c*) - (functionp *d*) - (functionp *e*) - (functionp *f*) - (functionp *g*) - (functionp *h*)))))) + (let ((*x* (lambda ()))) + (declare (special *x*)) + (sb-thread:make-thread (lambda () (functionp *x*)))))) (sb-thread:terminate-thread gc-thread) (terpri))) diff --git a/version.lisp-expr b/version.lisp-expr index 3a5d164..a218013 100644 --- a/version.lisp-expr +++ b/version.lisp-expr @@ -17,4 +17,4 @@ ;;; checkins which aren't released. (And occasionally for internal ;;; versions, especially for internal versions off the main CVS ;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".) -"0.9.5.43" +"0.9.5.44" -- 1.7.10.4