qt5base-lts/tests/auto/gui/text
Eskil Abrahamsen Blomfeldt c9d991de1f Fix missing text when Harfbuzz fails to shape a substring
This amends fccd419dd6.

If Harfbuzz failed on one of the items in a string and returned
zero glyphs, then we would exit the shaping loop. The mentioned
change fixed a crash related to this when the ignored character
was the only character in the string, but it occurred in a
subitem of a longer string, then we would return and fail to
lay out the rest of the string.

This popped up recently because an update to Harfbuzz has caused
it to return zero glyphs when applying the Apple emoji font to
an isolated variant character (see bug report). When we matched
the symbol to the main font and only the variant character to
the emoji font, we would get in this situation, and end up
exiting the shaping early.

[ChangeLog][QtGui][Text] Fixed a regression which would
sometimes cause text to disappear if the string contained
an unmatched variation selector character.

Pick-to: 6.4
Fixes: QTBUG-108799
Change-Id: I616ab1b2d33c2df731419c5ce06fbc578a625a32
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2022-12-05 07:55:43 +01:00
..
qabstracttextdocumentlayout Port from container.count()/length() to size() 2022-10-04 07:40:08 +02:00
qcssparser Port from container::count() and length() to size() - V5 2022-11-03 14:59:24 +01:00
qfont Port from container::count() and length() to size() - V5 2022-11-03 14:59:24 +01:00
qfontcache Change the license of all CMakeLists.txt and *.cmake files to BSD 2022-08-23 23:58:42 +02:00
qfontdatabase Port from container::count() and length() to size() - V5 2022-11-03 14:59:24 +01:00
qfontmetrics Change the license of all CMakeLists.txt and *.cmake files to BSD 2022-08-23 23:58:42 +02:00
qglyphrun Fix missing text when Harfbuzz fails to shape a substring 2022-12-05 07:55:43 +01:00
qinputcontrol Change the license of all CMakeLists.txt and *.cmake files to BSD 2022-08-23 23:58:42 +02:00
qrawfont Port from container::count() and length() to size() - V5 2022-11-03 14:59:24 +01:00
qstatictext Change the license of all CMakeLists.txt and *.cmake files to BSD 2022-08-23 23:58:42 +02:00
qsyntaxhighlighter Port from container::count() and length() to size() - V5 2022-11-03 14:59:24 +01:00
qtextblock Change the license of all CMakeLists.txt and *.cmake files to BSD 2022-08-23 23:58:42 +02:00
qtextcursor Port from container.count()/length() to size() 2022-10-04 07:40:08 +02:00
qtextdocument Port from container::count() and length() to size() - V5 2022-11-03 14:59:24 +01:00
qtextdocumentfragment Port from container.count()/length() to size() 2022-10-04 07:40:08 +02:00
qtextdocumentlayout QTextDocumentLayout: Account for topMargin when hit-testing 2022-09-05 16:29:11 +00:00
qtextformat Port from container::count() and length() to size() - V5 2022-11-03 14:59:24 +01:00
qtextimagehandler Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qtextlayout QTextLayout: fix maximumWidth() for a text containing line separator 2022-11-19 18:03:32 +03:00
qtextlist Change the license of all CMakeLists.txt and *.cmake files to BSD 2022-08-23 23:58:42 +02:00
qtextmarkdownimporter Change the license of all CMakeLists.txt and *.cmake files to BSD 2022-08-23 23:58:42 +02:00
qtextmarkdownwriter Change the license of all CMakeLists.txt and *.cmake files to BSD 2022-08-23 23:58:42 +02:00
qtextobject Change the license of all CMakeLists.txt and *.cmake files to BSD 2022-08-23 23:58:42 +02:00
qtextodfwriter Port from container.count()/length() to size() 2022-10-04 07:40:08 +02:00
qtextpiecetable Port from container.count()/length() to size() 2022-10-04 07:40:08 +02:00
qtextscriptengine Change the license of all CMakeLists.txt and *.cmake files to BSD 2022-08-23 23:58:42 +02:00
qtexttable Port from container.count()/length() to size() 2022-10-04 07:40:08 +02:00
qzip Port from container.count()/length() to size() 2022-10-04 07:40:08 +02:00
CMakeLists.txt Change the license of all CMakeLists.txt and *.cmake files to BSD 2022-08-23 23:58:42 +02:00