[pg-cvs] CVS update: pg/v3-protocol.lisp
Eric Marsden
emarsden at common-lisp.net
Thu Apr 22 17:00:12 UTC 2004
Update of /project/pg/cvsroot/pg
In directory common-lisp.net:/tmp/cvs-serv6507
Modified Files:
v3-protocol.lisp
Log Message:
Comment-only patch: mark the places in the v3-protocol code where charset
encoding problems will have to be addressed.
It's probably not worth going through the v2-protocol code to fix these
issues, since it has too many places where READ-CSTRING is confused with
READ-OCTET-ARRAY.
Date: Thu Apr 22 13:00:12 2004
Author: emarsden
Index: pg/v3-protocol.lisp
diff -u pg/v3-protocol.lisp:1.10 pg/v3-protocol.lisp:1.11
--- pg/v3-protocol.lisp:1.10 Wed Apr 21 15:27:46 2004
+++ pg/v3-protocol.lisp Thu Apr 22 13:00:12 2004
@@ -233,6 +233,7 @@
(result (unless (= end position)
(make-array (- end position)
:element-type 'base-char))))
+ ;; FIXME need to handle charset encoding issues here
(when result
(loop :for i :from position :below end
:for j :from 0
@@ -243,6 +244,9 @@
(setf position (1+ end))
result)))))
+;; FIXME need to check all callers of this function to distinguish
+;; between uses that expect charset encoding to be handled, and those
+;; that really want READ-OCTET-ARRAY-FROM-PACKET
(defgeneric read-string-from-packet (packet length)
(:documentation
"Reads an array of LENGTH bytes from the packet")
@@ -316,6 +320,9 @@
(setf (elt data (+ 2 position)) (ldb (byte 8 8) value))
(setf (elt data (+ 3 position)) (ldb (byte 8 0) value))
(incf position 4))
+ ;; FIXME need to deal with text encoding issues here:
+ ;; transform from the Lisp string representation to the
+ ;; encoding selected by *PG-CLIENT-ENCODING*.
((:cstring)
(check-type value string)
More information about the Pg-cvs
mailing list