summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2013-07-18 09:43:39 +0100
committerAndras Timar <atimar@suse.com>2013-07-18 09:58:04 +0000
commit3d67253be08fba7b717332a23ffbe6f2cb6c2a53 (patch)
treea48b391fc3542c71b8c6017c3d79aab3091c54ed
parentafe4760d2d2ee1e1fe5554b6727886de068372a2 (diff)
WaE: assuming signed overflow does not occur when assuming...
that (X + c) < X is always false [-Wstrict-overflow] (cherry picked from commit 37a3f9638315483114380a461f60abeab7809a3d) Change-Id: I63880bf27ab7e34eb9e0be682b39b80b71d65103 Reviewed-on: https://gerrit.libreoffice.org/4963 Reviewed-by: Andras Timar <atimar@suse.com> Tested-by: Andras Timar <atimar@suse.com>
-rw-r--r--basebmp/source/bitmapdevice.cxx11
1 files changed, 9 insertions, 2 deletions
diff --git a/basebmp/source/bitmapdevice.cxx b/basebmp/source/bitmapdevice.cxx
index d1a19f938d07..2833b1276fce 100644
--- a/basebmp/source/bitmapdevice.cxx
+++ b/basebmp/source/bitmapdevice.cxx
@@ -336,8 +336,15 @@ namespace
{
if( !mpDamage )
return;
- basegfx::B2IPoint aEnd( rDamagePoint.getX() + 1,
- rDamagePoint.getY() + 1 );
+
+ sal_Int32 nX(rDamagePoint.getX());
+ sal_Int32 nY(rDamagePoint.getY());
+ if (nX < SAL_MAX_INT32)
+ ++nX;
+ if (nY < SAL_MAX_INT32)
+ ++nY;
+
+ basegfx::B2IPoint aEnd( nX, nY );
damaged( basegfx::B2IBox( rDamagePoint, aEnd ) );
}