Painting: Fix value check in isUnclipped()

left() == INT_MIN or top() == INT_MIN will still underflow
in QRect's ctor, so the check must be more strict

Pick-to: 6.2 6.3
Change-Id: I12ab148934c8c90865ca9247bd8badeedd4a9f45
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
This commit is contained in:
Robert Löhning 2022-03-11 14:20:11 +01:00
parent 286a63898f
commit d865129d9e

View File

@ -3005,7 +3005,7 @@ inline bool QRasterPaintEnginePrivate::isUnclipped(const QRectF &rect,
int penWidth) const
{
const QRectF norm = rect.normalized();
if (norm.left() < INT_MIN || norm.top() < INT_MIN
if (norm.left() <= INT_MIN || norm.top() <= INT_MIN
|| norm.right() > INT_MAX || norm.bottom() > INT_MAX
|| norm.width() > INT_MAX || norm.height() > INT_MAX)
return false;