X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcode%2Ftarget-thread.lisp;h=e51387281304e5e2ac372bec3b3eee85a9b385c9;hb=b411b7d5ee00409d531a8b0b4fcfc4d1d3c5c1d9;hp=34968541c01c1ea048f4f6f9a7f8fcb4a729fa28;hpb=3d83fa318b8f512dde418fa127144fca3260ec1a;p=sbcl.git diff --git a/src/code/target-thread.lisp b/src/code/target-thread.lisp index 3496854..e513872 100644 --- a/src/code/target-thread.lisp +++ b/src/code/target-thread.lisp @@ -556,7 +556,8 @@ time we reacquire MUTEX and return to the caller." ;; continuing after a deadline or EINTR. (setf (waitqueue-data queue) me) (loop - (multiple-value-bind (to-sec to-usec) (decode-timeout nil) + (multiple-value-bind (to-sec to-usec) + (allow-with-interrupts (decode-timeout nil)) (case (unwind-protect (with-pinned-objects (queue me) ;; RELEASE-MUTEX is purposefully as close to @@ -879,7 +880,7 @@ around and can be retrieved by JOIN-THREAD." (setup-sem (make-semaphore :name "Thread setup semaphore")) (real-function (coerce function 'function)) (initial-function - (lambda () + (named-lambda initial-thread-function () ;; In time we'll move some of the binding presently done in C ;; here too. ;;