qt5base-lts/src/gui/text
John Preston 46804956cb Fix possible crash in calculateRightBearingForPreviousGlyph().
LineBreakHelper saves previousGlyph for calculating right bearing of
this glyph when it is needed. But between the saving of this glyph and
the calculation the fontEngine can change (if we move to the different
item). So we need to save the fontEngine together with the glyph and
use this saved fontEngine for the saved glyph, while still using the
current fontEngine for calculating right bearing of the current glyph.

[ChangeLog][QtGui][QTextLine] Fixed a possible UB in the calculation
of glyph right bearing when a QTextLine layout is performed.

Change-Id: I14c729a1f761a45eaba85754c0b15a27faff7458
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
2016-10-10 23:03:49 +00:00
..
qabstracttextdocumentlayout_p.h Add qtguiglobal.h and qtguiglobal_p.h 2016-07-03 07:55:57 +00:00
qabstracttextdocumentlayout.cpp Add QAbstractTextDocumentLayout::imageAt(), formatAt() 2016-03-18 19:02:13 +00:00
qabstracttextdocumentlayout.h Add qtguiglobal.h and qtguiglobal_p.h 2016-07-03 07:55:57 +00:00
qcssparser_p.h Standardize some "We mean it" comments 2016-08-17 19:51:40 +00:00
qcssparser.cpp Merge remote-tracking branch 'origin/5.7' into 5.8 2016-08-29 15:30:17 +02:00
qcssscanner.cpp Handle indirect sibling selector 2016-07-27 20:18:02 +00:00
qdistancefield_p.h Add qtguiglobal.h and qtguiglobal_p.h 2016-07-03 07:55:57 +00:00
qdistancefield.cpp Merge remote-tracking branch 'origin/5.7' into dev 2016-06-21 08:39:41 +02:00
qfont_p.h Avoid synthesizing stretch on condensed font families 2016-08-15 11:39:44 +00:00
qfont.cpp Merge dev into 5.8 2016-08-22 11:30:01 +02:00
qfont.h Avoid synthesizing stretch on condensed font families 2016-08-15 11:39:44 +00:00
qfontdatabase.cpp Use QString::fromLatin1() less to avoid string allocations 2016-09-15 15:55:57 +00:00
qfontdatabase.h Add qtguiglobal.h and qtguiglobal_p.h 2016-07-03 07:55:57 +00:00
qfontengine_ft_p.h Added capHeight() to QRawFont and QFontMetrics(F) 2016-08-15 18:27:06 +00:00
qfontengine_ft.cpp Merge remote-tracking branch 'origin/5.7' into 5.8 2016-08-29 15:30:17 +02:00
qfontengine_p.h Merge remote-tracking branch 'origin/5.7' into 5.8 2016-08-29 15:30:17 +02:00
qfontengine_qpf2_p.h Added capHeight() to QRawFont and QFontMetrics(F) 2016-08-15 18:27:06 +00:00
qfontengine_qpf2.cpp Added capHeight() to QRawFont and QFontMetrics(F) 2016-08-15 18:27:06 +00:00
qfontengine.cpp Merge remote-tracking branch 'origin/5.7' into 5.8 2016-08-29 15:30:17 +02:00
qfontengineglyphcache_p.h Add qtguiglobal.h and qtguiglobal_p.h 2016-07-03 07:55:57 +00:00
qfontengineglyphcache.cpp Updated license headers 2016-01-15 12:25:24 +00:00
qfontinfo.h Add qtguiglobal.h and qtguiglobal_p.h 2016-07-03 07:55:57 +00:00
qfontmetrics.cpp Added capHeight() to QRawFont and QFontMetrics(F) 2016-08-15 18:27:06 +00:00
qfontmetrics.h Added capHeight() to QRawFont and QFontMetrics(F) 2016-08-15 18:27:06 +00:00
qfontsubset_agl.cpp Updated license headers 2016-01-15 12:25:24 +00:00
qfontsubset_p.h Add qtguiglobal.h and qtguiglobal_p.h 2016-07-03 07:55:57 +00:00
qfontsubset.cpp DirectWrite: Fix crash when embedding empty glyphs in PDF 2016-08-24 06:11:07 +00:00
qfragmentmap_p.h Add qtguiglobal.h and qtguiglobal_p.h 2016-07-03 07:55:57 +00:00
qfragmentmap.cpp Updated license headers 2016-01-15 12:25:24 +00:00
qglyphrun_p.h Add qtguiglobal.h and qtguiglobal_p.h 2016-07-03 07:55:57 +00:00
qglyphrun.cpp Use QFlags::setFlag where prudent in qtbase 2016-02-12 19:32:05 +00:00
qglyphrun.h Add qtguiglobal.h and qtguiglobal_p.h 2016-07-03 07:55:57 +00:00
qharfbuzzng_p.h Add qtguiglobal.h and qtguiglobal_p.h 2016-07-03 07:55:57 +00:00
qharfbuzzng.cpp QFontEngine: use RAII for font_, face_ members 2016-03-04 10:37:25 +00:00
qplatformfontdatabase.cpp Use QStringBuilder more to optimize memory allocations 2016-09-15 09:08:45 +00:00
qplatformfontdatabase.h Add qtguiglobal.h and qtguiglobal_p.h 2016-07-03 07:55:57 +00:00
qrawfont_p.h Add qtguiglobal.h and qtguiglobal_p.h 2016-07-03 07:55:57 +00:00
qrawfont.cpp Merge remote-tracking branch 'origin/5.7' into 5.8 2016-09-29 00:38:01 +02:00
qrawfont.h Added capHeight() to QRawFont and QFontMetrics(F) 2016-08-15 18:27:06 +00:00
qstatictext_p.h Add qtguiglobal.h and qtguiglobal_p.h 2016-07-03 07:55:57 +00:00
qstatictext.cpp Updated license headers 2016-01-15 12:25:24 +00:00
qstatictext.h Add qtguiglobal.h and qtguiglobal_p.h 2016-07-03 07:55:57 +00:00
qsyntaxhighlighter.cpp Updated license headers 2016-01-15 12:25:24 +00:00
qsyntaxhighlighter.h Add qtguiglobal.h and qtguiglobal_p.h 2016-07-03 07:55:57 +00:00
qtextcursor_p.h Add qtguiglobal.h and qtguiglobal_p.h 2016-07-03 07:55:57 +00:00
qtextcursor.cpp Support C++17 fallthrough attribute 2016-08-19 18:38:53 +00:00
qtextcursor.h Add qtguiglobal.h and qtguiglobal_p.h 2016-07-03 07:55:57 +00:00
qtextdocument_p.cpp Use QStringRef to optimize memory allocation 2016-08-18 07:29:37 +00:00
qtextdocument_p.h Export QTextDocumentPrivate with Q_GUI_EXPORT 2016-08-01 11:03:35 +00:00
qtextdocument.cpp Merge remote-tracking branch 'origin/5.7' into 5.8 2016-08-29 15:30:17 +02:00
qtextdocument.h Add qtguiglobal.h and qtguiglobal_p.h 2016-07-03 07:55:57 +00:00
qtextdocumentfragment_p.h Add qtguiglobal.h and qtguiglobal_p.h 2016-07-03 07:55:57 +00:00
qtextdocumentfragment.cpp Support C++17 fallthrough attribute 2016-08-19 18:38:53 +00:00
qtextdocumentfragment.h Add qtguiglobal.h and qtguiglobal_p.h 2016-07-03 07:55:57 +00:00
qtextdocumentlayout_p.h Add qtguiglobal.h and qtguiglobal_p.h 2016-07-03 07:55:57 +00:00
qtextdocumentlayout.cpp Revert "Emit updateBlock signal in QTextDocumentLayout" 2016-07-27 06:46:04 +00:00
qtextdocumentwriter.cpp QtGui: Introduce delegating constructors. 2016-05-09 19:47:53 +00:00
qtextdocumentwriter.h Add qtguiglobal.h and qtguiglobal_p.h 2016-07-03 07:55:57 +00:00
qtextengine_p.h Add qtguiglobal.h and qtguiglobal_p.h 2016-07-03 07:55:57 +00:00
qtextengine.cpp Merge remote-tracking branch 'origin/5.7' into 5.8 2016-09-21 11:57:52 +02:00
qtextformat_p.h Add qtguiglobal.h and qtguiglobal_p.h 2016-07-03 07:55:57 +00:00
qtextformat.cpp Merge remote-tracking branch 'origin/5.6' into 5.7 2016-08-13 01:05:02 +02:00
qtextformat.h Add qtguiglobal.h and qtguiglobal_p.h 2016-07-03 07:55:57 +00:00
qtexthtmlparser_p.h Merge remote-tracking branch 'origin/5.7' into 5.8 2016-08-29 15:30:17 +02:00
qtexthtmlparser.cpp Merge remote-tracking branch 'origin/5.7' into 5.8 2016-08-29 15:30:17 +02:00
qtextimagehandler_p.h Add qtguiglobal.h and qtguiglobal_p.h 2016-07-03 07:55:57 +00:00
qtextimagehandler.cpp Replace QLatin1Literal with QLatin1String 2016-09-03 18:55:56 +00:00
qtextlayout.cpp Fix possible crash in calculateRightBearingForPreviousGlyph(). 2016-10-10 23:03:49 +00:00
qtextlayout.h Add qtguiglobal.h and qtguiglobal_p.h 2016-07-03 07:55:57 +00:00
qtextlist.cpp Updated license headers 2016-01-15 12:25:24 +00:00
qtextlist.h Add qtguiglobal.h and qtguiglobal_p.h 2016-07-03 07:55:57 +00:00
qtextobject_p.h Add qtguiglobal.h and qtguiglobal_p.h 2016-07-03 07:55:57 +00:00
qtextobject.cpp Merge remote-tracking branch 'origin/5.6' into 5.7 2016-05-06 15:36:44 +02:00
qtextobject.h Add qtguiglobal.h and qtguiglobal_p.h 2016-07-03 07:55:57 +00:00
qtextodfwriter_p.h Standardize some "We mean it" comments 2016-08-17 19:51:40 +00:00
qtextodfwriter.cpp Use QString::fromLatin1() less to avoid string allocations 2016-09-15 15:55:57 +00:00
qtextoption.cpp Add flag for showing document terminator in text 2016-04-08 12:30:42 +00:00
qtextoption.h Add qtguiglobal.h and qtguiglobal_p.h 2016-07-03 07:55:57 +00:00
qtexttable_p.h Add qtguiglobal.h and qtguiglobal_p.h 2016-07-03 07:55:57 +00:00
qtexttable.cpp Gui: use const (and const APIs) more 2016-06-01 09:35:29 +00:00
qtexttable.h Add qtguiglobal.h and qtguiglobal_p.h 2016-07-03 07:55:57 +00:00
qzip.cpp Use QStringRef() more, exploiting its new ::chop() 2016-08-16 20:08:31 +00:00
qzipreader_p.h Add qtguiglobal.h and qtguiglobal_p.h 2016-07-03 07:55:57 +00:00
qzipwriter_p.h Add qtguiglobal.h and qtguiglobal_p.h 2016-07-03 07:55:57 +00:00
text.pri Use qtConfig throughout in qtbase 2016-08-19 04:28:05 +00:00