package/source/zipapi/ZipFile.cxx |    1 
 vcl/source/gdi/metaact.cxx        |   52 +++++++++++++++++++-------------------
 vcl/workben/sftfuzzer.options     |    3 --
 3 files changed, 27 insertions(+), 29 deletions(-)

New commits:
commit 6576820b86c4066f6bca8d021c8774d0d3a58a34
Author:     Caolán McNamara <[email protected]>
AuthorDate: Sun Mar 1 13:21:22 2026 +0000
Commit:     Caolán McNamara <[email protected]>
CommitDate: Sun Mar 1 15:52:00 2026 +0100

    move AllowPoint etc to the start inside the anon namespace
    
    Change-Id: I5c5df3ea5fc5665a35dedcec5af948f19b8f48ca
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/200703
    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 2e40fece2934..5f8cac5cf942 100644
--- a/vcl/source/gdi/metaact.cxx
+++ b/vcl/source/gdi/metaact.cxx
@@ -76,6 +76,32 @@ void ImplScaleLineInfo( LineInfo& rLineInfo, double fScaleX, 
double fScaleY )
     }
 }
 
+bool AllowDim(tools::Long nDim)
+{
+    static bool bFuzzing = comphelper::IsFuzzing();
+    if (bFuzzing)
+    {
+        constexpr auto numCairoMax(1 << 23);
+        if (nDim > numCairoMax || nDim < -numCairoMax)
+        {
+            SAL_WARN("vcl", "skipping huge dimension: " << nDim);
+            return false;
+        }
+    }
+    return true;
+}
+
+bool AllowPoint(const Point& rPoint)
+{
+    return AllowDim(rPoint.X()) && AllowDim(rPoint.Y());
+}
+
+bool AllowRect(const tools::Rectangle& rRect)
+{
+    return AllowPoint(rRect.TopLeft()) && AllowPoint(rRect.BottomRight()) &&
+           AllowDim(rRect.GetHeight()) && AllowDim(rRect.GetWidth());
+}
+
 } //anonymous namespace
 
 MetaAction::MetaAction() :
@@ -222,32 +248,6 @@ MetaRectAction::MetaRectAction( const tools::Rectangle& 
rRect ) :
     maRect      ( rRect )
 {}
 
-static bool AllowDim(tools::Long nDim)
-{
-    static bool bFuzzing = comphelper::IsFuzzing();
-    if (bFuzzing)
-    {
-        constexpr auto numCairoMax(1 << 23);
-        if (nDim > numCairoMax || nDim < -numCairoMax)
-        {
-            SAL_WARN("vcl", "skipping huge dimension: " << nDim);
-            return false;
-        }
-    }
-    return true;
-}
-
-static bool AllowPoint(const Point& rPoint)
-{
-    return AllowDim(rPoint.X()) && AllowDim(rPoint.Y());
-}
-
-static bool AllowRect(const tools::Rectangle& rRect)
-{
-    return AllowPoint(rRect.TopLeft()) && AllowPoint(rRect.BottomRight()) &&
-           AllowDim(rRect.GetHeight()) && AllowDim(rRect.GetWidth());
-}
-
 void MetaRectAction::Execute( OutputDevice* pOut )
 {
     if (!AllowRect(pOut->LogicToPixel(maRect)))
commit 84d48a12cdc54a0a89138b4a951f3204ada786c2
Author:     Caolán McNamara <[email protected]>
AuthorDate: Sun Mar 1 13:09:46 2026 +0000
Commit:     Caolán McNamara <[email protected]>
CommitDate: Sun Mar 1 15:51:53 2026 +0100

    remove unused vcl/workben/sftfuzzer.options
    
    since:
    
    commit 280ec672983a8314fcb0d2648c2ce1d17aa6db51
    Date:   Tue Feb 17 21:57:15 2026 +0200
    
        Remove TestFontSubset() and sftfuzzer
    
    Change-Id: I7e443af6227cef29a0cfc0a8d9525fdaaf3d1d25
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/200702
    Reviewed-by: Caolán McNamara <[email protected]>
    Tested-by: Jenkins

diff --git a/vcl/workben/sftfuzzer.options b/vcl/workben/sftfuzzer.options
deleted file mode 100644
index 98f36ac2312b..000000000000
--- a/vcl/workben/sftfuzzer.options
+++ /dev/null
@@ -1,3 +0,0 @@
-[libfuzzer]
-max_len = 65536
-dict = otf.dict
commit ee85abda49f3439f26745894b57c3eef50623ff7
Author:     Caolán McNamara <[email protected]>
AuthorDate: Sun Mar 1 13:04:15 2026 +0000
Commit:     Caolán McNamara <[email protected]>
CommitDate: Sun Mar 1 15:51:45 2026 +0100

    ofz#488752793 Integer-overflow
    
    possibly since:
    
    commit d7ad4553f4ec2a6117f5e6455d6325454c34464e
    Date:   Fri Jul 19 20:43:05 2024 +0200
    
        package: ZipFile: check Zip64 end of central directory for consistency
    
    Change-Id: I4bcaaf10be63aa5068b6c801ff1b8a2455dfc63c
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/200701
    Tested-by: Jenkins
    Reviewed-by: Caolán McNamara <[email protected]>

diff --git a/package/source/zipapi/ZipFile.cxx 
b/package/source/zipapi/ZipFile.cxx
index a854e7a07db5..be59ebfe1570 100644
--- a/package/source/zipapi/ZipFile.cxx
+++ b/package/source/zipapi/ZipFile.cxx
@@ -1288,6 +1288,7 @@ std::tuple<sal_Int64, sal_Int64, sal_Int64> 
ZipFile::findCentralDirectory()
                 if (o3tl::checked_add<sal_Int64>(nEnd64DirOffset, 
nEnd64DirSize, end)
                     || nLoc64End64Offset < end
                     || nEnd64DirOffset < 0
+                    || nEnd64DirSize < 0
                     || nLoc64End64Offset - nEnd64DirSize != nEnd64DirOffset)
                 {
                     throw ZipException(u"Invalid Zip64 end (bad central 
directory size)"_ustr);

Reply via email to