MySQL plugin: fix escaping a QByteArray
1df974590f19dec7b632d000ab9408a4de6f117a introduced a regression which kills the escaping of a QByteArray because QString::fromUtf8() gets a wrong length from a QVarLengthArray. Fixes: QTBUG-105078 Change-Id: Ic2f76c82c246e1e9eaf1d3f907d11fc345b5655e Reviewed-by: Samuel Gaist <samuel.gaist@idiap.ch> (cherry picked from commit f9d002ea20e7d5075313e9dcc769ed5348d2b829) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
This commit is contained in:
parent
29991ceeaf
commit
ee37e7c69a
@ -1469,7 +1469,7 @@ QString QMYSQLDriver::formatValue(const QSqlField &field, bool trimStrings) cons
|
||||
QVarLengthArray<char, 512> buffer(ba.size() * 2 + 1);
|
||||
auto escapedSize = mysql_real_escape_string(d->mysql, buffer.data(), ba.data(), ba.size());
|
||||
r.reserve(escapedSize + 3);
|
||||
r = u'\'' + QString::fromUtf8(buffer) + u'\'';
|
||||
r = u'\'' + QString::fromUtf8(buffer.data(), escapedSize) + u'\'';
|
||||
break;
|
||||
} else {
|
||||
qWarning("QMYSQLDriver::formatValue: Database not open");
|
||||
|
Loading…
x
Reference in New Issue
Block a user