Stas Boukarev stass...@gmail.com writes:
Stas Boukarev stass...@gmail.com writes:
According to
http://www.postgresql.org/docs/current/static/arrays.html#ARRAYS-INPUT
arrays should look like '{ val1 delim val2 delim ... }', but cl-postgres
sends them as {val1 ...}, the attached patch corrects this.
Aw, now I hit C-x C-w in the wrong buffer, that's what you get for
being in a hurry.
Sorry for the noise, here's the patch for real.
diff --git a/cl-postgres/sql-string.lisp b/cl-postgres/sql-string.lisp
index 7555cc9..d88 100644
--- a/cl-postgres/sql-string.lisp
+++ b/cl-postgres/sql-string.lisp
@@ -55,12 +55,12 @@ whether the string should be escaped before being put into a query.)
(if (typep arg '(vector (unsigned-byte 8)))
(values (escape-bytes arg) t)
(with-output-to-string (out)
- (write-char #\{ out)
+ (write-string '{ out)
(loop :for sep := :then #\, :for x :across arg :do
(princ sep out)
(multiple-value-bind (string escape) (to-sql-string x)
(if escape (write-quoted string out) (write-string string out
- (write-char #\} out
+ (write-string }' out
(:method ((arg array))
(with-output-to-string (out)
(labels ((recur (dims off)
@@ -75,7 +75,9 @@ whether the string should be escaped before being put into a query.)
(multiple-value-bind (string escape) (to-sql-string (row-major-aref arg i))
(if escape (write-quoted string out) (write-string string out)
(write-char #\} out)))
- (recur (array-dimensions arg) 0
+(write-char #\' out)
+(recur (array-dimensions arg) 0)
+(write-char #\' out
(:method ((arg integer))
(princ-to-string arg))
(:method ((arg float))
--
With Best Regards, Stas.
___
postmodern-devel mailing list
postmodern-devel@common-lisp.net
http://common-lisp.net/cgi-bin/mailman/listinfo/postmodern-devel