diff options
author | Egon Elbre <egonelbre@gmail.com> | 2015-04-12 14:59:29 +0300 |
---|---|---|
committer | Egon Elbre <egonelbre@gmail.com> | 2015-04-12 15:02:50 +0300 |
commit | ac0129617fd4293e7c341a48bba2adfc85f5afe1 (patch) | |
tree | 177fc5461f6bd05dc6376d4b51b9086de388f5df /sqlite3.go | |
parent | Merge pull request #188 from larsmans/optimize (diff) | |
download | golite-ac0129617fd4293e7c341a48bba2adfc85f5afe1.tar.gz golite-ac0129617fd4293e7c341a48bba2adfc85f5afe1.tar.xz |
Fix NULs in text.
NUL character is a valid symbols in UTF8.
Fixes #195
Diffstat (limited to 'sqlite3.go')
-rw-r--r-- | sqlite3.go | 4 |
1 files changed, 3 insertions, 1 deletions
@@ -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": |