Rewrote ODBC's read-data-in-chunks to handle multibyte characters.
authorNathan Bird <nathan@acceleration.net>
Fri, 6 Jan 2012 21:36:22 +0000 (16:36 -0500)
committerNathan Bird <nathan@acceleration.net>
Fri, 6 Jan 2012 21:36:22 +0000 (16:36 -0500)
commit5699785aefac188f296f3877d3c12324b9f541b9
tree7656f03144e393c37f07012d50b2a4f1fb5dea8c
parentca0cd6368e2847f7852e68dd370b41fbf1ad076f
Rewrote ODBC's read-data-in-chunks to handle multibyte characters.

This function is called on large (greater than +max-precision+) fields
and was previously converting to lisp characters one at time with no
regard for encoding.  The new method uses 2x more memory as it uses an
extra copy of the string (in pieces) but at least it returns correct
data.

Added a test case that shows the problem (now fixed).
db-odbc/odbc-api.lisp
tests/test-i18n.lisp