vcl/source/gdi/metaact.cxx |    8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

New commits:
commit 018a431a4e085918e3f6b7af15471e2a2f575a90
Author:     Caolán McNamara <[email protected]>
AuthorDate: Sun Mar 1 13:21:47 2026 +0000
Commit:     Caolán McNamara <[email protected]>
CommitDate: Sun Mar 1 15:52:07 2026 +0100

    ofz#482698893 Integer-overflow
    
    Change-Id: I148263db26682e7a19d0134b81447110ae801278
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/200704
    Tested-by: Jenkins
    Reviewed-by: Caolán McNamara <[email protected]>

diff --git a/vcl/source/gdi/metaact.cxx b/vcl/source/gdi/metaact.cxx
index 5f8cac5cf942..060ee000fc12 100644
--- a/vcl/source/gdi/metaact.cxx
+++ b/vcl/source/gdi/metaact.cxx
@@ -81,7 +81,7 @@ bool AllowDim(tools::Long nDim)
     static bool bFuzzing = comphelper::IsFuzzing();
     if (bFuzzing)
     {
-        constexpr auto numCairoMax(1 << 23);
+        constexpr auto numCairoMax(1 << 22);
         if (nDim > numCairoMax || nDim < -numCairoMax)
         {
             SAL_WARN("vcl", "skipping huge dimension: " << nDim);
@@ -216,6 +216,12 @@ MetaLineAction::MetaLineAction( const Point& rStart, const 
Point& rEnd,
 
 void MetaLineAction::Execute( OutputDevice* pOut )
 {
+    if (!AllowPoint(pOut->LogicToPixel(maStartPt)) ||
+        !AllowPoint(pOut->LogicToPixel(maEndPt)))
+    {
+        return;
+    }
+
     if( maLineInfo.IsDefault() )
         pOut->DrawLine( maStartPt, maEndPt );
     else

Reply via email to