summaryrefslogtreecommitdiff
path: root/vcl
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2023-02-16 20:36:57 +0000
committerCaolán McNamara <caolanm@redhat.com>2023-02-17 08:49:23 +0000
commit72cf5b4b8c99e969eb36b0910e2954d220b8850c (patch)
tree7e4ecf1f594bd8d7ed0328d437bf9e52eb98acdf /vcl
parent7183d259d0d8bf8020da1aa06c963581d2bf779f (diff)
crashreporting: divide by zero, aPrefSize.Width() must have been 0 here
Change-Id: I5ee2c1f4386c95c12fb821a3514cb732b220bb86 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/147174 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Diffstat (limited to 'vcl')
-rw-r--r--vcl/source/filter/png/PngImageWriter.cxx9
1 files changed, 6 insertions, 3 deletions
diff --git a/vcl/source/filter/png/PngImageWriter.cxx b/vcl/source/filter/png/PngImageWriter.cxx
index 0438ea7645a2..35ccefaec2c7 100644
--- a/vcl/source/filter/png/PngImageWriter.cxx
+++ b/vcl/source/filter/png/PngImageWriter.cxx
@@ -170,9 +170,12 @@ static bool pngWrite(SvStream& rStream, const BitmapEx& rBitmapEx, int nCompress
if (aBitmapEx.GetPrefMapMode().GetMapUnit() == MapUnit::Map100thMM)
{
Size aPrefSize(aBitmapEx.GetPrefSize());
- sal_uInt32 nPrefSizeX = o3tl::convert(aSize.Width(), 100000, aPrefSize.Width());
- sal_uInt32 nPrefSizeY = o3tl::convert(aSize.Height(), 100000, aPrefSize.Height());
- png_set_pHYs(pPng, pInfo, nPrefSizeX, nPrefSizeY, 1);
+ if (aPrefSize.Width() && aPrefSize.Height())
+ {
+ sal_uInt32 nPrefSizeX = o3tl::convert(aSize.Width(), 100000, aPrefSize.Width());
+ sal_uInt32 nPrefSizeY = o3tl::convert(aSize.Height(), 100000, aPrefSize.Height());
+ png_set_pHYs(pPng, pInfo, nPrefSizeX, nPrefSizeY, 1);
+ }
}
png_set_compression_level(pPng, nCompressionLevel);