diff options
authorJiang Jiang <>2011-07-28 14:51:54 +0200
committerQt by Nokia <>2011-07-29 08:12:12 +0200
commit487583459ea7958f24cd579888a662bcce26caf3 (patch)
parent78cf553469bbfc0a5b4952d54ffe96566cae266c (diff)
Fix off-by-one error in binary search
This one-line change makes the binary search in QTextEngine::findItem behave consistently with the linear search that it replaced in commit acf678e57ed088f3e56a551cac6c7c3322005750. The new behavior seems to cause crashes in kword (and perhaps other applications) by triggering a logClusters assert, although I have been unable to create a unit test that reproduces this. Task-number: QTBUG-17209 Done-by: Dr. Robert Marmorstein <> Change-Id: I68b79f024e9836e1cc8b0f3514889120541eb2ea Reviewed-on: Reviewed-by: Qt Sanity Bot <> Reviewed-by: Jiang Jiang <>
1 files changed, 1 insertions, 1 deletions
diff --git a/src/gui/text/qtextengine.cpp b/src/gui/text/qtextengine.cpp
index 41ea56a23a..cca30e6e20 100644
--- a/src/gui/text/qtextengine.cpp
+++ b/src/gui/text/qtextengine.cpp
@@ -1632,7 +1632,7 @@ bool QTextEngine::isRightToLeft() const
int QTextEngine::findItem(int strPos) const
- int left = 0;
+ int left = 1;
int right = layoutData->items.size()-1;
while(left <= right) {
int middle = ((right-left)/2)+left;