QProgressBar: Prevent division by zero

Prevent division, if totalSteps is zero.
This amends 913b98d4120b56487a14eb96b5e5252fdd939603.

Task-number: QTBUG-45048
Change-Id: I1456f8c2f81becaf9b15a2d3ba80d01974a45b25
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
(cherry picked from commit 95ee3910111b5ac3e083a05c79125f128e247883)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
This commit is contained in:
Axel Spoerl 2024-11-15 08:45:46 +01:00 committed by Qt Cherry-pick Bot
parent dce6ef8fac
commit 9c726ed287

View File

@ -118,8 +118,9 @@ bool QProgressBarPrivate::repaintRequired() const
const int totalSteps = maximum - minimum; const int totalSteps = maximum - minimum;
const int currentPercentage = (value - minimum) * 100 / totalSteps; const int currentPercentage = totalSteps ? (value - minimum) * 100 / totalSteps : 0;
const int lastPaintedPercentage = (lastPaintedValue - minimum) * 100 / totalSteps; const int lastPaintedPercentage = totalSteps ? (lastPaintedValue - minimum) * 100 / totalSteps
: 0;
const int percentageChangeConstant = 1; const int percentageChangeConstant = 1;
const bool percentageChanged = (qAbs(currentPercentage - lastPaintedPercentage) >= percentageChangeConstant); const bool percentageChanged = (qAbs(currentPercentage - lastPaintedPercentage) >= percentageChangeConstant);