Fix NULs in text.

NUL character is a valid symbols in UTF8.

Fixes #195
This commit is contained in:
Egon Elbre
2015-04-12 14:59:29 +03:00
parent e28cd440fa
commit ac0129617f
2 changed files with 42 additions and 1 deletions

View File

@@ -624,7 +624,9 @@ func (rc *SQLiteRows) Next(dest []driver.Value) error {
case C.SQLITE_TEXT:
var err error
var timeVal time.Time
s := C.GoString((*C.char)(unsafe.Pointer(C.sqlite3_column_text(rc.s.s, C.int(i)))))
n := int(C.sqlite3_column_bytes(rc.s.s, C.int(i)))
s := C.GoStringN((*C.char)(unsafe.Pointer(C.sqlite3_column_text(rc.s.s, C.int(i)))), C.int(n))
switch rc.decltype[i] {
case "timestamp", "datetime", "date":