@@ -167,7 +167,7 @@ namespace sqlite {
167167 template <>
168168 struct has_sqlite_type <std::string, SQLITE3_TEXT, void > : std::true_type {};
169169 inline int bind_col_in_db (sqlite3_stmt* stmt, int inx, const STR_REF& val) {
170- return sqlite3_bind_text (stmt, inx, val.data (), - 1 , SQLITE_TRANSIENT);
170+ return sqlite3_bind_text (stmt, inx, val.data (), val. length () , SQLITE_TRANSIENT);
171171 }
172172
173173 // Convert char* to string_view to trigger op<<(..., const STR_REF )
@@ -183,13 +183,13 @@ namespace sqlite {
183183 }
184184
185185 inline void store_result_in_db (sqlite3_context* db, const STR_REF& val) {
186- sqlite3_result_text (db, val.data (), - 1 , SQLITE_TRANSIENT);
186+ sqlite3_result_text (db, val.data (), val. length () , SQLITE_TRANSIENT);
187187 }
188188 // U16STR_REF
189189 template <>
190190 struct has_sqlite_type <std::u16string, SQLITE3_TEXT, void > : std::true_type {};
191191 inline int bind_col_in_db (sqlite3_stmt* stmt, int inx, const U16STR_REF& val) {
192- return sqlite3_bind_text16 (stmt, inx, val.data (), - 1 , SQLITE_TRANSIENT);
192+ return sqlite3_bind_text16 (stmt, inx, val.data (), sizeof ( char16_t ) * val. length () , SQLITE_TRANSIENT);
193193 }
194194
195195 // Convert char* to string_view to trigger op<<(..., const STR_REF )
@@ -205,7 +205,7 @@ namespace sqlite {
205205 }
206206
207207 inline void store_result_in_db (sqlite3_context* db, const U16STR_REF& val) {
208- sqlite3_result_text16 (db, val.data (), - 1 , SQLITE_TRANSIENT);
208+ sqlite3_result_text16 (db, val.data (), sizeof ( char16_t ) * val. length () , SQLITE_TRANSIENT);
209209 }
210210
211211 // Other integer types
0 commit comments