QDebug: finish porting put{String,ByteArray} to qsizetype
The underlying QTextStream seems to support qsizetype-sized data and the private API of QDebug that is under consideration in this patch takes size_t, but, as so often, there're int/uint casts in-between that break things. Widen the int/uint casts to qsizetype/size_t, respectively. Task-number: QTBUG-103525 Change-Id: I10bca093dc2d6f136871c94ca43f5b42fd1c8971 Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io> (cherry picked from commit bc2b8411c9e510a1101ed09b627317854c6e7d45) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
This commit is contained in:
parent
51495e36da
commit
a886dd9f0c
@ -320,7 +320,7 @@ void QDebug::putString(const QChar *begin, size_t length)
|
||||
if (stream->noQuotes) {
|
||||
// no quotes, write the string directly too (no pretty-printing)
|
||||
// this respects the QTextStream state, though
|
||||
stream->ts.d_ptr->putString(begin, int(length));
|
||||
stream->ts.d_ptr->putString(begin, qsizetype(length));
|
||||
} else {
|
||||
// we'll reset the QTextStream formatting mechanisms, so save the state
|
||||
QDebugStateSaver saver(*this);
|
||||
@ -338,7 +338,8 @@ void QDebug::putByteArray(const char *begin, size_t length, Latin1Content conten
|
||||
if (stream->noQuotes) {
|
||||
// no quotes, write the string directly too (no pretty-printing)
|
||||
// this respects the QTextStream state, though
|
||||
QString string = content == ContainsLatin1 ? QString::fromLatin1(begin, int(length)) : QString::fromUtf8(begin, int(length));
|
||||
QString string = content == ContainsLatin1 ? QString::fromLatin1(begin, qsizetype(length))
|
||||
: QString::fromUtf8(begin, qsizetype(length));
|
||||
stream->ts.d_ptr->putString(string);
|
||||
} else {
|
||||
// we'll reset the QTextStream formatting mechanisms, so save the state
|
||||
|
@ -106,7 +106,7 @@ public:
|
||||
inline QDebug &operator<<(double t) { stream->ts << t; return maybeSpace(); }
|
||||
inline QDebug &operator<<(const char* t) { stream->ts << QString::fromUtf8(t); return maybeSpace(); }
|
||||
inline QDebug &operator<<(const char16_t *t) { stream->ts << QStringView(t); return maybeSpace(); }
|
||||
inline QDebug &operator<<(const QString & t) { putString(t.constData(), uint(t.length())); return maybeSpace(); }
|
||||
inline QDebug &operator<<(const QString & t) { putString(t.constData(), size_t(t.length())); return maybeSpace(); }
|
||||
inline QDebug &operator<<(QStringView s) { putString(s.data(), size_t(s.size())); return maybeSpace(); }
|
||||
inline QDebug &operator<<(QUtf8StringView s) { putByteArray(reinterpret_cast<const char*>(s.data()), s.size(), ContainsBinary); return maybeSpace(); }
|
||||
inline QDebug &operator<<(QLatin1StringView t) { putByteArray(t.latin1(), t.size(), ContainsLatin1); return maybeSpace(); }
|
||||
|
Loading…
x
Reference in New Issue
Block a user