From: <me...@us...> - 2005-08-04 09:06:36
|
Update of /cvsroot/sbcl/sbcl/src/code In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv5977/src/code Modified Files: target-thread.lisp Log Message: 0.9.3.25 * bug fix: release-foreground doesn't choke on session lock if there is only one thread in the session Index: target-thread.lisp =================================================================== RCS file: /cvsroot/sbcl/sbcl/src/code/target-thread.lisp,v retrieving revision 1.36 retrieving revision 1.37 diff -u -d -r1.36 -r1.37 --- target-thread.lisp 14 Jul 2005 16:30:40 -0000 1.36 +++ target-thread.lisp 4 Aug 2005 09:06:27 -0000 1.37 @@ -418,13 +418,14 @@ (defun release-foreground (&optional next) #!+sb-doc "Background this thread. If NEXT is supplied, arrange for it to -have the foreground next" +have the foreground next." #!-sb-thread (declare (ignore next)) #!-sb-thread nil #!+sb-thread (with-session-lock (*session*) - (setf (session-interactive-threads *session*) - (delete *current-thread* (session-interactive-threads *session*))) + (when (rest (session-interactive-threads *session*)) + (setf (session-interactive-threads *session*) + (delete *current-thread* (session-interactive-threads *session*)))) (when next (setf (session-interactive-threads *session*) (list* next |