https://bugs.kde.org/show_bug.cgi?id=473380

--- Comment #6 from Alvin Wong <al...@alvinhc.com> ---
It seems to be a problem that only happens when using QDomDocument::setContent 
with QXmlSimpleReader and QXmlInputSource. If I use QDomDocument::setContent
with QXmlStreamReader then the character reference is parsed correctly.

The former setContent overload is deprecated (and removed in Qt6), but
unfortunately switching over to QXmlStreamReader is *not* an option, because we
require preserving white-spaces in text nodes and QXmlStreamReader did not have
an option for this until Qt 6.5. [1][2] I guess we can patch our own Qt but
that means distro packages won't have the fix, unless we also get it fixed in
KDE's patch collection (which we can do, I suppose).

This is where the truncation happens:
https://invent.kde.org/qt/qt/qtbase/-/blob/83c69c89fb4495f2fa3d1f302c3aac509fc60313/src/xml/sax/qxml.cpp#L7464-7485

    stringAddC(QChar(tmp));

[1]: https://bugreports.qt.io/browse/QTBUG-104130
[2]: https://doc.qt.io/qt-6/xml-changes-qt6.html#spacing-only-text-nodes

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to