diff --git a/src/corelib/text/qstring.cpp b/src/corelib/text/qstring.cpp index 5de3043c691..9259d485c15 100644 --- a/src/corelib/text/qstring.cpp +++ b/src/corelib/text/qstring.cpp @@ -5389,6 +5389,12 @@ char16_t *QLatin1::convertToUnicode(char16_t *out, QLatin1StringView in) noexcep return std::next(out, len); } +char *QLatin1::convertFromUnicode(char *out, QStringView in) noexcept +{ + const qsizetype len = in.size(); + qt_to_latin1(reinterpret_cast(out), in.utf16(), len); + return out + len; +} /*! \fn QByteArray QString::toLatin1() const diff --git a/src/corelib/text/qstringconverter_p.h b/src/corelib/text/qstringconverter_p.h index ce6254de0cc..edbe1b54843 100644 --- a/src/corelib/text/qstringconverter_p.h +++ b/src/corelib/text/qstringconverter_p.h @@ -50,11 +50,9 @@ struct QLatin1 } static char *convertFromUnicode(char *out, QStringView in, QStringConverter::State *state) noexcept; - static char *convertFromUnicode(char *out, QStringView in) noexcept - { - QStringConverter::State state{QStringConverter::Flag::Stateless}; - return convertFromUnicode(out, in, &state); - } + + // Defined in qstring.cpp + static char *convertFromUnicode(char *out, QStringView in) noexcept; }; struct QUtf8BaseTraits