summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorEirik Aavitsland <eirik.aavitsland@qt.io>2020-12-09 17:16:03 +0100
committerJani Heikkinen <jani.heikkinen@qt.io>2021-05-11 09:59:13 +0000
commitb2265e7dd3617a344945e57a5006b3360b85f922 (patch)
treeef52124a3756ef6b09ed0e9e8a5fa138d9836163 /src
parentc18152cb3a8ac8f46945b50b783d95dbef054610 (diff)
Avoid overflowing QFixed in text layout
Fixes: QTBUG-89172 Change-Id: Icb78c8eeb1dbe4c5d4c6476beebafc0115a91e8c Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io> (cherry picked from commit 36ccbee34e89d185918a2925444dac11211e5c60) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> (cherry picked from commit e071eb1302465bd2bd5873cbe407e7550a50a947) Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
Diffstat (limited to 'src')
-rw-r--r--src/gui/text/qtextlayout.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/gui/text/qtextlayout.cpp b/src/gui/text/qtextlayout.cpp
index f3f0caa379..03f2acd700 100644
--- a/src/gui/text/qtextlayout.cpp
+++ b/src/gui/text/qtextlayout.cpp
@@ -2508,6 +2508,9 @@ void QTextLine::draw(QPainter *p, const QPointF &pos, const QTextLayout::FormatR
return;
}
+ static QRectF maxFixedRect(QPointF(-QFIXED_MAX, -QFIXED_MAX), QPointF(QFIXED_MAX, QFIXED_MAX));
+ if (!maxFixedRect.contains(pos))
+ return;
QTextLineItemIterator iterator(eng, index, pos, selection);
QFixed lineBase = line.base();