QHeaderView: fix logic in setOffset()
Fix the logic in setOffset() which was accidentally reversed during fixing of UB during signed overflow. Amends 49fcac99deea390901000a74deea1c0c690b6ae2. Coverity-Id: 479557 Pick-to: 6.8 6.5 Fixes: QTBUG-136362 Fixes: QTBUG-136477 Change-Id: Ifc9c80346355b0a9e516effe2ff8b60b1966d67a Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com> (cherry picked from commit e808b38d4bb894f42b7dfe52f1ef67a0d48c23ff) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
This commit is contained in:
parent
77a10188a5
commit
1da71e5e7d
@ -429,7 +429,7 @@ void QHeaderView::setOffset(int newOffset)
|
|||||||
const int ndelta = q26::saturate_cast<int>(d->headerOffset - qint64{newOffset});
|
const int ndelta = q26::saturate_cast<int>(d->headerOffset - qint64{newOffset});
|
||||||
d->headerOffset = newOffset;
|
d->headerOffset = newOffset;
|
||||||
if (d->orientation == Qt::Horizontal) {
|
if (d->orientation == Qt::Horizontal) {
|
||||||
if (isLeftToRight()) {
|
if (isRightToLeft()) {
|
||||||
if (int r; !qMulOverflow<-1>(ndelta, &r))
|
if (int r; !qMulOverflow<-1>(ndelta, &r))
|
||||||
d->viewport->scroll(r, 0);
|
d->viewport->scroll(r, 0);
|
||||||
else
|
else
|
||||||
|
Loading…
x
Reference in New Issue
Block a user