Update of /project/elephant/cvsroot/elephant/src/elephant In directory clnet:/tmp/cvs-serv12887/elephant
Modified Files: serializer2.lisp Log Message: Minor edits and cleanup of serializer2
--- /project/elephant/cvsroot/elephant/src/elephant/serializer2.lisp 2007/02/12 20:46:25 1.22 +++ /project/elephant/cvsroot/elephant/src/elephant/serializer2.lisp 2007/02/13 16:50:40 1.23 @@ -325,7 +325,7 @@ (if (< frob 0) (buffer-write-byte +negative-bignum+ bs) (buffer-write-byte +positive-bignum+ bs)) - (buffer-write-int needed bs) + (buffer-write-uint32 needed bs) (loop for i fixnum from 0 below word-size ;; this ldb is consing on CMUCL/OpenMCL! ;; there is an OpenMCL function which should work @@ -389,9 +389,9 @@ ((= tag +pathname+) (parse-namestring (or (%deserialize bs) ""))) ((= tag +positive-bignum+) - (deserialize-bignum bs (buffer-read-fixnum bs) t)) + (deserialize-bignum bs (buffer-read-fixnum32 bs) t)) ((= tag +negative-bignum+) - (deserialize-bignum bs (buffer-read-fixnum bs) nil)) + (deserialize-bignum bs (buffer-read-fixnum32 bs) nil)) ((= tag +rational+) (/ (the integer (%deserialize bs)) (the integer (%deserialize bs)))) @@ -496,8 +496,8 @@ (ignorable int-byte-spec)) (loop for i from 0 below (/ length 4) for byte-spec = - #+(or cmu sbcl allegro) (progn (setf (cdr int-byte-spec) (* 32 i)) int-byte-spec) - #+(or lispworks openmcl) (byte 32 (* 32 i)) +;; #+(or cmu sbcl allegro) (progn (setf (cdr int-byte-spec) (* 32 i)) int-byte-spec) + #+(or allegro sbcl cmu lispworks openmcl) (byte 32 (* 32 i)) with num integer = 0 do (setq num (dpb (buffer-read-uint bs) byte-spec num))