diff options
author | Øystein Heskestad <oystein.heskestad@qt.io> | 2022-01-07 09:57:34 +0100 |
---|---|---|
committer | Øystein Heskestad <oystein.heskestad@qt.io> | 2022-01-17 09:48:12 +0100 |
commit | 74955f386d859ffe573487b73e17e81754bd6e8b (patch) | |
tree | a14e08a1a488fbff912feffc875de6dbccff8047 /src/plugins/sqldrivers/sqlite | |
parent | 88dda89329330119bcb97788e84a30b2bf1cb23a (diff) |
Replace QString::utf16 with QString::data where appropriate
QString::utf16() needlessly detaches fromRawData() to ensure a
terminating NUL. Use data() where we don't require said NUL, taking
care not call the mutable data() overload, which would detach,
too.
Task-number: QTBUG-98763
Change-Id: Ibd5e56798c0c666893c12c91ff0881842b8430c7
Reviewed-by: Marc Mutz <marc.mutz@qt.io>
Diffstat (limited to 'src/plugins/sqldrivers/sqlite')
-rw-r--r-- | src/plugins/sqldrivers/sqlite/qsql_sqlite.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/plugins/sqldrivers/sqlite/qsql_sqlite.cpp b/src/plugins/sqldrivers/sqlite/qsql_sqlite.cpp index 9f90d91e82..54d734683b 100644 --- a/src/plugins/sqldrivers/sqlite/qsql_sqlite.cpp +++ b/src/plugins/sqldrivers/sqlite/qsql_sqlite.cpp @@ -524,7 +524,7 @@ bool QSQLiteResult::exec() case QMetaType::QDateTime: { const QDateTime dateTime = value.toDateTime(); const QString str = dateTime.toString(Qt::ISODateWithMs); - res = sqlite3_bind_text16(d->stmt, i + 1, str.utf16(), + res = sqlite3_bind_text16(d->stmt, i + 1, str.data(), int(str.size() * sizeof(ushort)), SQLITE_TRANSIENT); break; @@ -532,7 +532,7 @@ bool QSQLiteResult::exec() case QMetaType::QTime: { const QTime time = value.toTime(); const QString str = time.toString(u"hh:mm:ss.zzz"); - res = sqlite3_bind_text16(d->stmt, i + 1, str.utf16(), + res = sqlite3_bind_text16(d->stmt, i + 1, str.data(), int(str.size() * sizeof(ushort)), SQLITE_TRANSIENT); break; @@ -545,9 +545,9 @@ bool QSQLiteResult::exec() SQLITE_STATIC); break; } default: { - QString str = value.toString(); + const QString str = value.toString(); // SQLITE_TRANSIENT makes sure that sqlite buffers the data - res = sqlite3_bind_text16(d->stmt, i + 1, str.utf16(), + res = sqlite3_bind_text16(d->stmt, i + 1, str.data(), int(str.size()) * sizeof(QChar), SQLITE_TRANSIENT); break; } |