Ignore:
Timestamp:
Jul 27, 2008, 6:35:02 PM (13 years ago)
Author:
gb
Message:

Propagate recent changes from trunk:

l1-aprims.lisp: static value of *WHOSTATE* is "Reset".
l1-io.lisp: use stack-allocated temporary buffer in WRITE-PNAME.
l1-lisp-threads.lisp: in THREAD-ENABLE, default "wait" to 1 day.
l1-processes.lisp: PROCESS-WHOSTATE detects and handles static binding

of *WHOSTATE*. PROCESS-ENABLE waits for 1 day, which is effectively
infinite and avoids word-size issues.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • release/1.2/source/level-1/l1-io.lisp

    r8530 r10220  
    986986
    987987
    988 (defvar *pname-buffer* (%cons-pool "12345678901234567890"))
    989 
    990988(defun write-pname (name case stream)
    991989  (declare (type simple-string name) (stream stream)
     
    10231021                           (return nil))
    10241022                         (setq sofar c-case))))))))
    1025         (declare (dynamic-extent slashify? single-case-p))
     1023        (declare (dynamic-extent #'slashify? #'single-case-p))
    10261024        (block alice
    10271025          (let ((len (length name))
     
    10651063            (let* ((outbuf-len (+ len len))
    10661064                   (outbuf-ptr -1)
    1067                    (pool *pname-buffer*)
    1068                    (outbuf (pool.data pool)))
    1069               (declare (fixnum outbuf-ptr) (simple-string outbuf))
    1070               (setf (pool.data pool) nil)   ; grab it.
    1071               (unless (and outbuf (>= (length outbuf) outbuf-len))
    1072                 (setq outbuf (make-array outbuf-len :element-type 'character)))
     1065                   (outbuf (make-string outbuf-len)))
     1066              (declare (fixnum outbuf-ptr outbuf-len)
     1067                       (dynamic-extent outbuf)
     1068                       (simple-string outbuf))
    10731069              (dotimes (pos (the fixnum len))
    10741070                (declare (type fixnum pos))
     
    10851081                    (setf (schar outbuf (incf outbuf-ptr)) #\\))
    10861082                  (setf (schar outbuf (incf outbuf-ptr)) char)))
    1087               (write-string outbuf stream :start  0 :end (1+ outbuf-ptr))
    1088               (setf (pool.data pool) outbuf)))))))
     1083              (write-string outbuf stream :start  0 :end (1+ outbuf-ptr))))))))
    10891084
    10901085#|
Note: See TracChangeset for help on using the changeset viewer.