Fix a warning about a position out of range.

May happen when selecting a text in diff editor.

Change-Id: I2c4790c42c91623fc8b4cabef8a4604de9fd4cef
Reviewed-by: hjk <hjk121@nokiamail.com>
Reviewed-by: David Schulz <david.schulz@digia.com>
This commit is contained in:
jkobus
2014-05-05 16:52:04 +02:00
committed by Jarek Kobus
parent ee3d6eba05
commit 671ffc8f73

View File

@@ -5639,10 +5639,10 @@ QMimeData *BaseTextEditorWidget::createMimeDataFromSelection() const
foreach (const QTextLayout::FormatRange &range, layout->additionalFormats()) {
const int startPosition = current.position() + range.start - selectionStart - removedCount;
const int endPosition = startPosition + range.length;
if (endPosition <= 0 || startPosition >= endOfDocument)
if (endPosition <= 0 || startPosition >= endOfDocument - removedCount)
continue;
tempCursor.setPosition(qMax(startPosition, 0));
tempCursor.setPosition(qMin(endPosition, endOfDocument), QTextCursor::KeepAnchor);
tempCursor.setPosition(qMin(endPosition, endOfDocument - removedCount), QTextCursor::KeepAnchor);
tempCursor.setCharFormat(range.format);
}
} else {