configure.ac                                |    1 +
 sw/qa/extras/ooxmlexport/ooxmlexport14.cxx  |   10 ++++++++++
 vcl/source/filter/GraphicFormatDetector.cxx |    7 +++----
 3 files changed, 14 insertions(+), 4 deletions(-)

New commits:
commit a0c7a5ea40647fa7fc030399cce8577834fb2fc2
Author:     Paris Oplopoios <paris.oplopo...@collabora.com>
AuthorDate: Sat Jun 24 03:48:32 2023 +0300
Commit:     Xisco Fauli <xiscofa...@libreoffice.org>
CommitDate: Fri Jun 30 10:04:28 2023 +0200

    tdf#156016 Fix bug where SVG check size would be 0
    
    Change-Id: I1c4adf75bbfbce7cb6b779375714b1c1bc7ec50d
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153543
    Tested-by: Jenkins
    Reviewed-by: Paris Oplopoios <parisop...@gmail.com>
    (cherry picked from commit 85013c57dd29e32ec0411c159ea72824ebca5aa9)
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153527
    Reviewed-by: Xisco Fauli <xiscofa...@libreoffice.org>

diff --git a/vcl/source/filter/GraphicFormatDetector.cxx 
b/vcl/source/filter/GraphicFormatDetector.cxx
index a0cdd2416c57..fc43cdd963ab 100644
--- a/vcl/source/filter/GraphicFormatDetector.cxx
+++ b/vcl/source/filter/GraphicFormatDetector.cxx
@@ -1249,7 +1249,7 @@ bool GraphicFormatDetector::checkSVG()
                                                       SVG_CHECK_SIZE, 
nDecompressedSize);
     nCheckSize = std::min<sal_uInt64>(nDecompressedSize, 256);
     bool bIsSvg(false);
-    bool bIsGZip = (nDecompressedSize > 0);
+    bool bIsGZip = mbWasCompressed;
     const char* pCheckArrayAsCharArray = reinterpret_cast<char*>(pCheckArray);
     // check for XML
     // #119176# SVG files which have no xml header at all have shown up this 
is optional
@@ -1279,11 +1279,11 @@ bool GraphicFormatDetector::checkSVG()
 
         if (bIsGZip)
         {
-            nCheckSize = std::min<sal_uInt64>(nDecompressedSize, 2048);
+            nCheckSize = std::min<sal_uInt64>(nDecompressedSize, 
SVG_CHECK_SIZE);
         }
         else
         {
-            nCheckSize = std::min<sal_uInt64>(mnStreamLength, 2048);
+            nCheckSize = std::min<sal_uInt64>(mnStreamLength, SVG_CHECK_SIZE);
             mrStream.Seek(mnStreamPosition);
             nCheckSize = mrStream.ReadBytes(sExtendedOrDecompressedFirstBytes, 
nCheckSize);
         }
@@ -1400,7 +1400,6 @@ sal_uInt8* 
GraphicFormatDetector::checkAndUncompressBuffer(sal_uInt8* aUncompres
         mbWasCompressed = true;
         return aUncompressedBuffer;
     }
-    nRetSize = 0;
     mbWasCompressed = false;
     return maFirstBytes.data();
 }
commit e1a785e74497f19af799d31d093aca92e0f18524
Author:     Christian Lohmaier <lohmaier+libreoff...@googlemail.com>
AuthorDate: Thu Jun 29 14:59:38 2023 +0200
Commit:     Xisco Fauli <xiscofa...@libreoffice.org>
CommitDate: Fri Jun 30 10:04:20 2023 +0200

    fix cross-compilation with frozen headers
    
    FROZEN wasn't part of the PERMITTED_BUILD_TARGETS in configure.ac, that
    in turn means it is not part of BUILD_TYPE when building the crossbuild
    build-tools.
    That in turn means gb_Helper_optional in external/Module_external.mk
    doesn't add it to the external module dirs, and that means the makefiles
    from external/frozen aren't read, more specifically there won't be any
    gb_UnpackedTarball_UnpackedTarball,frozen definition.
    
    The UnpackedTarball definitions don't error out in this case, and the
    gb_Library_use_extenals,module,frozen then doesn't work as expected. It
    happily depends on the UnpackedTarball_get_final_target for frozen, but
    since there is nothing to unpack (since the makefiles with the
    definitions are skipped) that is a noop/it goes straight to just touch
    workdir_for_build/UnpackedTarball/frozen.update to fulfill the
    dependency without actually extracting any files.
    
    This patch deals with the first problem only, adding it to the
    PERMITTED_BUILD_TARGETS will allow the mechanism to work as intended.
    
    Change-Id: Ie9e8ad47ba4c281fb3246daf67450a16f792b908
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153747
    Tested-by: Jenkins
    Reviewed-by: Christian Lohmaier <lohmaier+libreoff...@googlemail.com>
    (cherry picked from commit fdfc6eb3fd37f87d51d1836d01259a14a4346a45)
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153756
    Reviewed-by: Xisco Fauli <xiscofa...@libreoffice.org>

diff --git a/configure.ac b/configure.ac
index 014cef7845c6..11b9fbe90acf 100644
--- a/configure.ac
+++ b/configure.ac
@@ -5775,6 +5775,7 @@ if test "$cross_compiling" = "yes"; then
         DYNLOADING
         EPOXY
         EXPAT
+        FROZEN
         GLM
         GRAPHITE
         HARFBUZZ
commit f3ca3de93e6320639166bd934bf5c000e98a7976
Author:     László Németh <nem...@numbertext.org>
AuthorDate: Thu Jun 29 11:13:28 2023 +0200
Commit:     Xisco Fauli <xiscofa...@libreoffice.org>
CommitDate: Fri Jun 30 10:04:14 2023 +0200

    tdf#146346 fix unit test & extend it to empty multi-page footnote
    
    Implementing multi-page floating tables resulted a partial
    regression here: not last table of the footnote, but empty
    paragraph under it resulted an empty split footnote on the
    second page, without noticing the problem.
    
    Problem with the previous unit test of tdf#146346 was
    reported by Mike Kaganski: "using getPages, does *not*
    fail when there are two pages - because getPages is
    (problematically) implemented as jumping to the end of
    the document (body!), and texting which page is this; and
    for the original problem, only a part of footnotes moved
    to the second page, while all the body text was on the page 1."
    
    Add unit test to catch the original problem (all tables of the
    footnote must be on the first page), which fix likely wasn't
    tested correctly using only getPages(), also add a (disabled) test
    for the new regression, too.
    
    Follow-up to commit d1ac8df139a2a65db45d1970ccc0b80e17d827f6
    "tdf#146346 DOCX import: fix table margins in footnotes".
    
    Change-Id: I6006db3fe2b5e6f7029a8a2d5d9cf99a17ec2ad2
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153739
    Tested-by: Jenkins
    Reviewed-by: László Németh <nem...@numbertext.org>
    (cherry picked from commit e7bf166deb379d8a73bf4421a04abd2ef05ff5fc)
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153758
    Reviewed-by: Xisco Fauli <xiscofa...@libreoffice.org>

diff --git a/sw/qa/extras/ooxmlexport/ooxmlexport14.cxx 
b/sw/qa/extras/ooxmlexport/ooxmlexport14.cxx
index 204ab670dd6a..5edb4dcdcd11 100644
--- a/sw/qa/extras/ooxmlexport/ooxmlexport14.cxx
+++ b/sw/qa/extras/ooxmlexport/ooxmlexport14.cxx
@@ -1358,6 +1358,16 @@ DECLARE_OOXMLEXPORT_TEST(testTdf146346, "tdf146346.docx")
 {
     // This was 2 (by bad docDefault vertical margins around tables in 
footnotes)
     CPPUNIT_ASSERT_EQUAL(1, getPages());
+
+    // only first page has table
+    xmlDocUniquePtr pXmlDoc = parseLayoutDump();
+
+    // check first page: all tables on the first page
+    assertXPath(pXmlDoc, "/root/page[1]//anchored/fly", 8);
+    assertXPath(pXmlDoc, "/root/page[1]//anchored/fly/tab", 8);
+
+    // FIXME no second page (regression since multi-page floating tables?)
+    //assertXPath(pXmlDoc, "/root/page[2]", 0);
 }
 #endif
 

Reply via email to