From 0bec3cadcdc5994692581a4fb716b4a152af416e Mon Sep 17 00:00:00 2001 From: Stephan Bergmann Date: Wed, 20 Jul 2022 17:44:57 +0200 Subject: [PATCH] Fix CppunitTest_vcl_svm_test for big endian These crc values are the results of Bitmap::GetChecksum() calls, and for headless Linux the formats of those bitmaps (ScanlineFormat::N24BitTcBgr | ScanlineFormat::TopDown vs. ScanlineFormat::N24BitTcRgb | ScanlineFormat::TopDown) depend on little vs. big endian (see the definition of SVP_24BIT_FORMAT in vcl/inc/headless/CairoCommon.hxx), so these tests failed on big endian Linux s390x. So I updated the tests with whatever values I got reported on s390x, whether or not those values are actually correct... Change-Id: I05d2b656ae2e0cf00cd870b895e1bf3cb9cf82f3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/137270 Tested-by: Jenkins Reviewed-by: Stephan Bergmann (cherry picked from commit eea7038c182cc1f6cd792359053ea2561a200026) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/137727 Reviewed-by: Michael Stahl --- vcl/qa/cppunit/svm/svmtest.cxx | 28 ++++++++++++++++++++++++++-- 1 file changed, 26 insertions(+), 2 deletions(-) diff --git a/vcl/qa/cppunit/svm/svmtest.cxx b/vcl/qa/cppunit/svm/svmtest.cxx index 91c9128278a7..9374e9916772 100644 --- a/vcl/qa/cppunit/svm/svmtest.cxx +++ b/vcl/qa/cppunit/svm/svmtest.cxx @@ -12,6 +12,7 @@ #include +#include #include #include #include @@ -937,14 +938,26 @@ void SvmTest::checkBitmaps(const GDIMetaFile& rMetaFile) if (SkiaHelper::isVCLSkiaEnabled()) return; // TODO SKIA using CRCs is broken (the idea of it) - assertXPathAttrs(pDoc, "/metafile/bmp[1]", {{"x", "1"}, {"y", "2"}, {"crc", "b8dee5da"}}); + assertXPathAttrs(pDoc, "/metafile/bmp[1]", {{"x", "1"}, {"y", "2"}, {"crc", +#if defined OSL_BIGENDIAN + "5e01ddcc" +#else + "b8dee5da" +#endif + }}); assertXPathAttrs(pDoc, "/metafile/bmpscale[1]", { {"x", "1"}, {"y", "2"}, {"width", "3"}, {"height", "4"}, {"crc", "281fc589"} }); assertXPathAttrs(pDoc, "/metafile/bmpscalepart[1]", { {"destx", "1"}, {"desty", "2"}, {"destwidth", "3"}, {"destheight", "4"}, {"srcx", "2"}, {"srcy", "1"}, {"srcwidth", "4"}, {"srcheight", "3"}, - {"crc", "5e01ddcc"} + {"crc", +#if defined OSL_BIGENDIAN + "b8dee5da" +#else + "5e01ddcc" +#endif + } }); } @@ -995,6 +1008,16 @@ void SvmTest::checkBitmapExs(const GDIMetaFile& rMetaFile) std::vector aExpectedCRC; aExpectedCRC.insert(aExpectedCRC.end(), { +#if defined OSL_BIGENDIAN + "08feb5d3", + "281fc589", + "b8dee5da", + "4df0e464", + "186ff868", + "33b4a07c", // 4-bit color bitmap - same as 8-bit color bitmap + "33b4a07c", + "742c3e35", +#else "d8377d4f", "281fc589", "5e01ddcc", @@ -1003,6 +1026,7 @@ void SvmTest::checkBitmapExs(const GDIMetaFile& rMetaFile) "3c80d829", // 4-bit color bitmap - same as 8-bit color bitmap "3c80d829", "71efc447", +#endif }); assertXPathAttrs(pDoc, "/metafile/bmpex[1]", { -- 2.37.1