drawinglayer/source/processor2d/vclhelperbufferdevice.cxx | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-)
New commits: commit 0dab89d88f6b42065033f64b69a6e04a31d477d6 Author: Stephan Bergmann <sberg...@redhat.com> AuthorDate: Thu Aug 5 08:16:53 2021 +0200 Commit: Stephan Bergmann <sberg...@redhat.com> CommitDate: Thu Aug 5 10:05:42 2021 +0200 Remove harmful static_cast<int> ...that were present ever since the code's introduction in c6df405c6c5e41212d69282d4f632893f108fda2 "#i39532#", but cause `instdir/program/soffice --headless --convert-to pdf` of doc/abi5309-1.doc from the crash-testing corpus to fail under UBSan with > drawinglayer/source/processor2d/vclhelperbufferdevice.cxx:278:64: runtime error: -3.77964e+18 is outside the range of representable values of type 'int' Change-Id: Ieff00d6fe91e2ffef46876ef308351d3689c5ffe Reviewed-on: https://gerrit.libreoffice.org/c/core/+/120055 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sberg...@redhat.com> diff --git a/drawinglayer/source/processor2d/vclhelperbufferdevice.cxx b/drawinglayer/source/processor2d/vclhelperbufferdevice.cxx index a0e29d7e6942..5e995ec0627b 100644 --- a/drawinglayer/source/processor2d/vclhelperbufferdevice.cxx +++ b/drawinglayer/source/processor2d/vclhelperbufferdevice.cxx @@ -275,10 +275,8 @@ impBufferDevice::impBufferDevice(OutputDevice& rOutDev, const basegfx::B2DRange& { basegfx::B2DRange aRangePixel(rRange); aRangePixel.transform(mrOutDev.GetViewTransformation()); - const ::tools::Rectangle aRectPixel(static_cast<sal_Int32>(floor(aRangePixel.getMinX())), - static_cast<sal_Int32>(floor(aRangePixel.getMinY())), - static_cast<sal_Int32>(ceil(aRangePixel.getMaxX())), - static_cast<sal_Int32>(ceil(aRangePixel.getMaxY()))); + const ::tools::Rectangle aRectPixel(floor(aRangePixel.getMinX()), floor(aRangePixel.getMinY()), + ceil(aRangePixel.getMaxX()), ceil(aRangePixel.getMaxY())); const Point aEmptyPoint; maDestPixel = ::tools::Rectangle(aEmptyPoint, mrOutDev.GetOutputSizePixel()); maDestPixel.Intersection(aRectPixel);