vcl/source/filter/svm/SvmReader.cxx |   34 ++++++++++++++++------------------
 1 file changed, 16 insertions(+), 18 deletions(-)

New commits:
commit e48120a033daba70b4113d12b1e6745283963e39
Author:     Caolán McNamara <caol...@redhat.com>
AuthorDate: Mon Feb 27 09:21:21 2023 +0000
Commit:     Caolán McNamara <caol...@redhat.com>
CommitDate: Mon Feb 27 11:51:36 2023 +0000

    ofz#56293 Timeout
    
    Change-Id: I8c6385b879d517b3f40a33d139295aeafb1c6354
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/147874
    Tested-by: Jenkins
    Reviewed-by: Caolán McNamara <caol...@redhat.com>

diff --git a/vcl/source/filter/svm/SvmReader.cxx 
b/vcl/source/filter/svm/SvmReader.cxx
index e2b6e87c0ce0..a7a4dcbd7817 100644
--- a/vcl/source/filter/svm/SvmReader.cxx
+++ b/vcl/source/filter/svm/SvmReader.cxx
@@ -55,6 +55,21 @@ public:
         m_rData.meActualCharSet = m_eOrigCharSet;
     }
 };
+
+void sanitizeNegativeSizeDimensions(Size& rSize)
+{
+    if (rSize.Width() < 0)
+    {
+        SAL_WARN("vcl.gdi", "sanitizeNegativeSizeDimensions: negative width");
+        rSize.setWidth(0);
+    }
+
+    if (rSize.Height() < 0)
+    {
+        SAL_WARN("vcl.gdi", "sanitizeNegativeSizeDimensions: negative height");
+        rSize.setHeight(0);
+    }
+}
 }
 
 SvmReader::SvmReader(SvStream& rIStm)
@@ -95,6 +110,7 @@ SvStream& SvmReader::Read(GDIMetaFile& rMetaFile, 
ImplMetaReadData* pData)
             rMetaFile.SetPrefMapMode(aMapMode);
             Size aSize;
             aSerializer.readSize(aSize);
+            sanitizeNegativeSizeDimensions(aSize);
             rMetaFile.SetPrefSize(aSize);
             mrStream.ReadUInt32(nCount);
 
@@ -855,24 +871,6 @@ rtl::Reference<MetaAction> SvmReader::BmpHandler()
     return pAction;
 }
 
-namespace
-{
-void sanitizeNegativeSizeDimensions(Size& rSize)
-{
-    if (rSize.Width() < 0)
-    {
-        SAL_WARN("vcl.gdi", "sanitizeNegativeSizeDimensions: negative width");
-        rSize.setWidth(0);
-    }
-
-    if (rSize.Height() < 0)
-    {
-        SAL_WARN("vcl.gdi", "sanitizeNegativeSizeDimensions: negative height");
-        rSize.setHeight(0);
-    }
-}
-}
-
 rtl::Reference<MetaAction> SvmReader::BmpScaleHandler()
 {
     rtl::Reference<MetaBmpScaleAction> pAction(new MetaBmpScaleAction);

Reply via email to