summaryrefslogtreecommitdiffstats
path: root/src/corelib/text/qstring.h
diff options
context:
space:
mode:
authorMarc Mutz <marc.mutz@qt.io>2022-05-16 11:57:53 +0200
committerMarc Mutz <marc.mutz@qt.io>2022-05-17 18:49:31 +0200
commitff053b39a3083813f89b1a3b6e735c047c09890f (patch)
tree6f8bacca460fc60ca8684f58e5ee25ec9e4d979b /src/corelib/text/qstring.h
parent53a842f66bcbb7bba63169a2c9bb974ba0f04585 (diff)
Fix int/qsizetype mismatches in qstring.h
[ChangeLog][QtCore][QString] Fixed result truncation mod INT_MAX in fromStdSstring(), fromStdU16string(), fromStdU32string(), and fromStdWstring(). [ChangeLog][QtCore][QAnyStringView] Fixed result truncation mod INT_MAX in asLatin1StringView(). [ChangeLog][QtCore][QUtf8StringView] Fixed result truncation mod INT_MAX in toString(). Pick-to: 6.3 6.2 Change-Id: I944c561018a6ab4581ad6b1d71ec1ba1accba4a4 Reviewed-by: Sona Kurazyan <sona.kurazyan@qt.io> Reviewed-by: MÃ¥rten Nordheim <marten.nordheim@qt.io>
Diffstat (limited to 'src/corelib/text/qstring.h')
-rw-r--r--src/corelib/text/qstring.h13
1 files changed, 6 insertions, 7 deletions
diff --git a/src/corelib/text/qstring.h b/src/corelib/text/qstring.h
index db2759f98b..a176cae038 100644
--- a/src/corelib/text/qstring.h
+++ b/src/corelib/text/qstring.h
@@ -404,7 +404,7 @@ constexpr QAnyStringView::QAnyStringView(QLatin1StringView str) noexcept
constexpr QLatin1StringView QAnyStringView::asLatin1StringView() const
{
Q_ASSERT(isLatin1());
- return {m_data_utf8, int(size())};
+ return {m_data_utf8, size()};
}
template <typename Visitor>
@@ -1240,8 +1240,7 @@ ushort QStringView::toUShort(bool *ok, int base) const
template <bool UseChar8T>
QString QBasicUtf8StringView<UseChar8T>::toString() const
{
- Q_ASSERT(size() == int(size()));
- return QString::fromUtf8(data(), int(size()));
+ return QString::fromUtf8(data(), size());
}
//
@@ -1502,7 +1501,7 @@ inline std::string QString::toStdString() const
{ return toUtf8().toStdString(); }
inline QString QString::fromStdString(const std::string &s)
-{ return fromUtf8(s.data(), int(s.size())); }
+{ return fromUtf8(s.data(), qsizetype(s.size())); }
inline std::wstring QString::toStdWString() const
{
@@ -1513,16 +1512,16 @@ inline std::wstring QString::toStdWString() const
}
inline QString QString::fromStdWString(const std::wstring &s)
-{ return fromWCharArray(s.data(), int(s.size())); }
+{ return fromWCharArray(s.data(), qsizetype(s.size())); }
inline QString QString::fromStdU16String(const std::u16string &s)
-{ return fromUtf16(s.data(), int(s.size())); }
+{ return fromUtf16(s.data(), qsizetype(s.size())); }
inline std::u16string QString::toStdU16String() const
{ return std::u16string(reinterpret_cast<const char16_t*>(data()), length()); }
inline QString QString::fromStdU32String(const std::u32string &s)
-{ return fromUcs4(s.data(), int(s.size())); }
+{ return fromUcs4(s.data(), qsizetype(s.size())); }
inline std::u32string QString::toStdU32String() const
{