diff --git a/src/corelib/text/qstring.cpp b/src/corelib/text/qstring.cpp index 450ea484f6c..291e2c37abb 100644 --- a/src/corelib/text/qstring.cpp +++ b/src/corelib/text/qstring.cpp @@ -5462,11 +5462,8 @@ QString QString::fromUtf16(const char16_t *unicode, qsizetype size) { if (!unicode) return QString(); - if (size < 0) { - size = 0; - while (unicode[size] != 0) - ++size; - } + if (size < 0) + size = QtPrivate::qustrlen(unicode); QStringDecoder toUtf16(QStringDecoder::Utf16, QStringDecoder::Flag::Stateless); return toUtf16(QByteArrayView(reinterpret_cast(unicode), size * 2)); }