From 5295aab4e60ead820305d66ab8a6b5712e5fca33 Mon Sep 17 00:00:00 2001 From: Jiang Jiang Date: Fri, 16 Dec 2011 14:21:49 +0100 Subject: Fix crash in positionInLigature Check boundary of pos before accessing attributes. Task-number: QTBUG-23104 Change-Id: I0bc93dbe320badc65acc75bb59b27f481e69b93e Reviewed-by: Eskil Reviewed-by: Jiang Jiang --- src/gui/text/qtextengine.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gui/text/qtextengine.cpp b/src/gui/text/qtextengine.cpp index d223b2ec37..d2c37d451d 100644 --- a/src/gui/text/qtextengine.cpp +++ b/src/gui/text/qtextengine.cpp @@ -2692,7 +2692,7 @@ int QTextEngine::positionInLigature(const QScriptItem *si, int end, closestItem--; int pos = si->position + clusterStart + closestItem; // Jump to the next charStop - while (!attrs[pos].charStop && pos < end) + while (pos < end && !attrs[pos].charStop) pos++; return pos; } -- cgit v1.2.3