forcepoint#78 large double cast to sal_Int32 wraps to neg
Change-Id: I831d0dd62d0b28dc19b90b03de3eaa159984347c
Reviewed-on: https://gerrit.libreoffice.org/70922
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
diff --git a/vcl/source/gdi/bmpacc.cxx b/vcl/source/gdi/bmpacc.cxx
index a0b9427..a031476 100644
--- a/vcl/source/gdi/bmpacc.cxx
+++ b/vcl/source/gdi/bmpacc.cxx
@@ -221,8 +221,8 @@ BitmapColor BitmapReadAccess::GetInterpolatedColorWithFallback( double fY, doubl
// double values, e.g. static_cast< sal_Int32 >(-0.25) is 0, not -1, but *has* to be outside (!)
if(mpBuffer && fX >= 0.0 && fY >= 0.0)
{
const sal_Int32 nX(static_cast< sal_Int32 >(fX));
const sal_Int32 nY(static_cast< sal_Int32 >(fY));
const sal_Int64 nX(static_cast<sal_Int64>(fX));
const sal_Int64 nY(static_cast<sal_Int64>(fY));
if(nX < mpBuffer->mnWidth && nY < mpBuffer->mnHeight)
{