0.9.18.75:
authorWilliam Harold Newman <william.newman@airmail.net>
Tue, 28 Nov 2006 15:43:09 +0000 (15:43 +0000)
committerWilliam Harold Newman <william.newman@airmail.net>
Tue, 28 Nov 2006 15:43:09 +0000 (15:43 +0000)
more correct handling of wide characters in debug info (merged
patch by Juho Snellman for bug reported by Attila Lendvai)

NEWS
src/code/debug-var-io.lisp
version.lisp-expr

diff --git a/NEWS b/NEWS
index f881ad1..6912e24 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -38,6 +38,8 @@ changes in sbcl-0.9.19 (1.0.0?) relative to sbcl-0.9.18:
     (reported by Josip Gracin)
   * bug fix: an error is signaled for attempts to displace arrays with
     incompatible element types (thanks to Mario Mommer)
+  * bug fix: more correct handling of wide characters in debug info
+    (bug reported by Attila Lendvai and fixed by Juho Snellman)
   * optimization: method calls with &OPTIONAL or &KEY arguments are faster
     and don't cause extra consing
   * optimization: MAP and MAP-INTO are significantly faster on vectors
index f2c10c1..2d489d2 100644 (file)
@@ -72,8 +72,7 @@
       `(progn
          (loop for i from 0 below ,len
                do (setf (aref ,res i)
-                        (code-char (aref ,vec (+ ,index i)))))
-         (incf ,index ,len)
+                        (code-char (read-var-integer ,vec ,index))))
          ,res))))
 
 ;;; Write STRING into VEC (adjustable, with fill-pointer) represented
@@ -84,7 +83,7 @@
   (let ((len (length string)))
     (write-var-integer len vec)
     (dotimes (i len)
-      (vector-push-extend (char-code (schar string i)) vec)))
+      (write-var-integer (char-code (schar string i)) vec)))
   (values))
 \f
 ;;;; packed bit vectors
index 1fd741f..c8b680e 100644 (file)
@@ -17,4 +17,4 @@
 ;;; checkins which aren't released. (And occasionally for internal
 ;;; versions, especially for internal versions off the main CVS
 ;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".)
-"0.9.18.74"
+"0.9.18.75"