Use STRING-HEAD! instead of SET-STRING-MAXIMUM-LENGTH!
authorJoe Marshall <jmarshall@alum.mit.edu>
Mon, 7 Sep 2009 16:43:33 +0000 (09:43 -0700)
committerJoe Marshall <jmarshall@alum.mit.edu>
Mon, 7 Sep 2009 16:43:33 +0000 (09:43 -0700)
src/runtime/input.scm
src/runtime/pgsql.scm
src/runtime/stringio.scm

index 18bb216692f2eba0bf2b91a0095549cd2a1f07d5..d456896142dab4ebccb0f490f079022367a37ea1 100644 (file)
@@ -102,8 +102,7 @@ USA.
   a)
 
 (define-integrable (accum->string a)
-  (set-string-maximum-length! (car a) (cdr a))
-  (car a))
+  (string-head! (car a) (cdr a)))
 
 (define-integrable (accum-count a)
   (cdr a))
index 2840b162a9ec69acc46081d16b1b619916e09dce..043e3c63ef8e88fc69238a80a022a470dff02f95 100644 (file)
@@ -298,10 +298,8 @@ USA.
 
 (define (escape-pgsql-string string)
   (guarantee-pgsql-available)
-  (let* ((escaped (make-string (fix:* 2 (string-length string))))
-        (length  (pq-escape-string string escaped)))
-    (set-string-maximum-length! escaped length)
-    escaped))
+  (let ((escaped (make-string (fix:* 2 (string-length string)))))
+    (string-head! escaped (pq-escape-string string escaped))))
 
 (define (encode-pgsql-bytea bytes)
   (guarantee-pgsql-available)
index a43de3381c3c532b7f7c457c5c460f2737cca72b..c8acd063e04d9ed70311a5ae256e0b2f38909b79 100644 (file)
@@ -423,10 +423,10 @@ USA.
 
 (define (narrow-out/extract-output! port)
   (let* ((os (port/state port))
-        (string (ostate-buffer os)))
-    (set-string-maximum-length! string (ostate-index os))
+        (string (ostate-buffer os))
+        (length (ostate-index os)))
     (reset-buffer! os)
-    string))
+    (string-head! string length)))
 
 (define (make-wide-output-type)
   (make-string-out-type wide-out/write-char
@@ -604,11 +604,11 @@ USA.
 (define (octets-out/extract-output! port)
   (output-port/flush-output port)
   (let* ((os (output-octets-port/os port))
-        (octets (ostate-buffer os)))
-    (set-string-maximum-length! octets (ostate-index os))
+        (octets (ostate-buffer os))
+        (length (ostate-index os)))
     (set-ostate-buffer! os (make-vector-8b 16))
     (set-ostate-index! os 0)
-    octets))
+    (string-head! octets length)))
 
 (define (octets-out/position port)
   (output-port/flush-output port)