Changeset 8977


Ignore:
Timestamp:
Apr 1, 2008, 12:48:41 PM (11 years ago)
Author:
gb
Message:

Define FF-CALL-IGNORING-EINTR.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/working-0711/ccl/lib/macros.lisp

    r8972 r8977  
    35443544           (return ,res))))))
    35453545
     3546(defmacro ff-call-ignoring-eintr (&body body)
     3547  (let* ((res (gensym))
     3548         (eintr (symbol-value (read-from-string "#$EINTR"))))
     3549    `(loop
     3550       (let* ((,res ,@body))
     3551         (declare (fixnum ,res))
     3552         (when (< ,res 0)
     3553           (setq res (%get-errno)))
     3554         (unless (eql ,res (- ,eintr))
     3555           (return ,res))))))
     3556   
     3557
    35463558(defmacro basic-stream-ioblock (s)
    35473559  `(or (basic-stream.state ,s)
Note: See TracChangeset for help on using the changeset viewer.