From b93dd8c5ad4a0f5c62d9d3a0e7093e9d9f28f225 Mon Sep 17 00:00:00 2001 From: D4MI4NX <105593627+D4MI4NX@users.noreply.github.com> Date: Mon, 4 Aug 2025 21:59:28 +0200 Subject: [PATCH] db.sqlite: fix get_text to trim data after (including) first 0 character --- vlib/db/sqlite/sqlite.c.v | 2 ++ vlib/db/sqlite/stmt.c.v | 3 ++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/vlib/db/sqlite/sqlite.c.v b/vlib/db/sqlite/sqlite.c.v index 2a294304a3..bbd38deabb 100644 --- a/vlib/db/sqlite/sqlite.c.v +++ b/vlib/db/sqlite/sqlite.c.v @@ -122,6 +122,8 @@ fn C.sqlite3_column_count(&C.sqlite3_stmt) int fn C.sqlite3_column_type(&C.sqlite3_stmt, int) int +fn C.sqlite3_column_bytes(&C.sqlite3_stmt, int) int + // fn C.sqlite3_errstr(int) &char diff --git a/vlib/db/sqlite/stmt.c.v b/vlib/db/sqlite/stmt.c.v index 8068e0c9f1..56d63025de 100644 --- a/vlib/db/sqlite/stmt.c.v +++ b/vlib/db/sqlite/stmt.c.v @@ -74,7 +74,8 @@ fn (stmt &Stmt) get_text(idx int) ?string { if b == &char(unsafe { nil }) { return '' } - return unsafe { b.vstring() } + l := C.sqlite3_column_bytes(stmt.stmt, idx) + return unsafe { b.vstring_with_len(l) } } }