diff options
Diffstat (limited to 'src/corelib/serialization/qxmlstream.cpp')
| -rw-r--r-- | src/corelib/serialization/qxmlstream.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/corelib/serialization/qxmlstream.cpp b/src/corelib/serialization/qxmlstream.cpp index f0fad77a085..0fe8c87779a 100644 --- a/src/corelib/serialization/qxmlstream.cpp +++ b/src/corelib/serialization/qxmlstream.cpp @@ -22,6 +22,7 @@ #include "qxmlstream_p.h" #include "qxmlstreamparser_p.h" #include <private/qstringconverter_p.h> +#include <private/qstringiterator_p.h> QT_BEGIN_NAMESPACE @@ -2978,9 +2979,12 @@ void QXmlStreamWriterPrivate::writeEscaped(QAnyStringView s, bool escapeWhitespa } }; struct NextUtf16 { - char32_t operator()(const QChar *&it, const QChar *) const + char32_t operator()(const QChar *&it, const QChar *end) const { - return (it++)->unicode(); + QStringIterator decoder(it, end); + char32_t result = decoder.next(u'\0'); + it = decoder.position(); + return result; } }; |
