* Mick Beaver [2012-03-06 22:16] writes:
Hello,
On Tue, Mar 6, 2012 at 3:48 PM, Helmut Eller heller@common-lisp.net wrote:
Should be fixed in HEAD now. It will take a while until Quicklisp picks it up.
Thank you very much for fixing this. Is there a specific commit that I could look at to see what the fix was? I'm hoping to learn from this...
There's not much to learn: somebody accidentally removed fd-stream-input-buffer-empty-p. Here is the patch:
diff --git a/swank-sbcl.lisp b/swank-sbcl.lisp --- a/swank-sbcl.lisp +++ b/swank-sbcl.lisp @@ -195,12 +195,15 @@ (return nil)) (sleep 0.1))))
+(defun fd-stream-input-buffer-empty-p (stream) + (let ((buffer (sb-impl::fd-stream-ibuf stream))) + (or (not buffer) + (= (sb-impl::buffer-head buffer) + (sb-impl::buffer-tail buffer))))) + #-win32 (defun input-ready-p (stream) - (or (let ((buffer (sb-impl::fd-stream-ibuf stream))) - (when buffer - (< (sb-impl::buffer-head buffer) - (sb-impl::buffer-tail buffer)))) + (or (not (fd-stream-input-buffer-empty-p stream)) #+#.(swank-backend:with-symbol 'fd-stream-fd-type 'sb-impl) (eq :regular (sb-impl::fd-stream-fd-type stream)) (not (sb-impl::sysread-may-block-p stream))))
Helmut