[slime-cvs] CVS slime

CVS User heller heller at common-lisp.net
Fri May 11 18:08:45 UTC 2012


Update of /project/slime/cvsroot/slime
In directory tiger.common-lisp.net:/tmp/cvs-serv24832

Modified Files:
	ChangeLog slime.el swank-sbcl.lisp 
Log Message:
* swank-sbcl.lisp (stream-force-output): Use with-world-lock
i.e. with-recursive-lock instead of with-mutex.
* slime.el (sbcl-world-lock): New test.

--- /project/slime/cvsroot/slime/ChangeLog	2012/05/11 06:52:18	1.2338
+++ /project/slime/cvsroot/slime/ChangeLog	2012/05/11 18:08:44	1.2339
@@ -1,5 +1,11 @@
 2012-05-11  Helmut Eller  <heller at common-lisp.net>
 
+	* swank-sbcl.lisp (stream-force-output): Use with-world-lock
+	i.e. with-recursive-lock instead of with-mutex.
+	* slime.el (sbcl-world-lock): New test.
+
+2012-05-11  Helmut Eller  <heller at common-lisp.net>
+
 	* swank-sbcl.lisp (stream-force-output): Don't use
 	with-deadline. Grab the world-lock instead.
 	(condition-timed-wait): Use the :timeout argument for real.
--- /project/slime/cvsroot/slime/slime.el	2012/05/07 06:10:50	1.1406
+++ /project/slime/cvsroot/slime/slime.el	2012/05/11 18:08:45	1.1407
@@ -8523,7 +8523,18 @@
     (slime-check "Debugger closed" (slime-sldb-level= nil)))
   (slime-sync-to-top-level 8))
 
-;;; FIXME: reconnection is broken since the recent io-redirection changes.    
+(def-slime-test sbcl-world-lock
+    (n delay)
+    "Print something inside WITH-COMPILATION-UNIT.
+In SBCL, WITH-COMPILATION-UNIT grabs the world lock and this tests that
+we can grab it recursivly."
+    '((10 0.03))
+  (slime-test-expect "no error"
+                     t
+                     (slime-eval `(cl:with-compilation-unit ()
+                                    (swank:flow-control-test ,n ,delay)
+                                    t))))
+
 (def-slime-test (disconnect-one-connection (:style :spawn)) ()
     "`slime-disconnect' should disconnect only the current connection"
     '(())
--- /project/slime/cvsroot/slime/swank-sbcl.lisp	2012/05/11 06:52:18	1.320
+++ /project/slime/cvsroot/slime/swank-sbcl.lisp	2012/05/11 18:08:45	1.321
@@ -1693,7 +1693,7 @@
   (defclass slime-output-stream (fundamental-character-output-stream)
     ())
   (defmethod stream-force-output :around ((stream slime-output-stream))
-    (sb-thread:with-mutex (sb-c::**world-lock** :wait-p nil)
+    (sb-kernel:with-world-lock ()
       (call-next-method)))
   )
 





More information about the slime-cvs mailing list