From a76e8a661ed393ad221eca3979c3fec1cd6288ae Mon Sep 17 00:00:00 2001 From: David Tardon Date: Wed, 19 Jun 2013 13:27:57 +0200 Subject: [PATCH] Related: rhbz#971321 fix rtf import on big endian This probably still leaves the ww8export test that was failing on s390, but we will deal with it if/when it fails again. --- 0001-disable-sw-import-export-tests.patch | 38 -------- 0001-fix-rtf-import-on-big-endian.patch | 114 ++++++++++++++++++++++ libreoffice.spec | 6 +- 3 files changed, 117 insertions(+), 41 deletions(-) delete mode 100644 0001-disable-sw-import-export-tests.patch create mode 100644 0001-fix-rtf-import-on-big-endian.patch diff --git a/0001-disable-sw-import-export-tests.patch b/0001-disable-sw-import-export-tests.patch deleted file mode 100644 index 2798d49..0000000 --- a/0001-disable-sw-import-export-tests.patch +++ /dev/null @@ -1,38 +0,0 @@ -From 9db523cf91d7d45ac509792b9d4e241fb3ff95f7 Mon Sep 17 00:00:00 2001 -From: David Tardon -Date: Sun, 16 Jun 2013 07:53:25 +0200 -Subject: [PATCH] disable sw import/export tests - -Most of them fails for unclear (yet) reasons on ppc/s390 (big endian -issue?) This is the last chance to get something that builds before the -F-19 final freeze. - -Change-Id: I4b15da3f444d59aaf3bb3023e83dbf9bc2efd9fe ---- - sw/Module_sw.mk | 9 --------- - 1 file changed, 9 deletions(-) - -diff --git a/sw/Module_sw.mk b/sw/Module_sw.mk -index 202c67c..04ad5fa 100644 ---- a/sw/Module_sw.mk -+++ b/sw/Module_sw.mk -@@ -46,16 +46,7 @@ $(eval $(call gb_Module_add_check_targets,sw,\ - )) - - $(eval $(call gb_Module_add_slowcheck_targets,sw,\ -- CppunitTest_sw_htmlexport \ - CppunitTest_sw_macros_test \ -- CppunitTest_sw_ooxmlexport \ -- CppunitTest_sw_ooxmlimport \ -- CppunitTest_sw_ww8export \ -- CppunitTest_sw_ww8import \ -- CppunitTest_sw_rtfexport \ -- CppunitTest_sw_rtfimport \ -- CppunitTest_sw_odfexport \ -- CppunitTest_sw_odfimport \ - )) - - ifneq ($(DISABLE_CVE_TESTS),TRUE) --- -1.8.2.1 - diff --git a/0001-fix-rtf-import-on-big-endian.patch b/0001-fix-rtf-import-on-big-endian.patch new file mode 100644 index 0000000..dda5b0b --- /dev/null +++ b/0001-fix-rtf-import-on-big-endian.patch @@ -0,0 +1,114 @@ +From d2dff59c034a65421dee67c86c1b1585d56f29d1 Mon Sep 17 00:00:00 2001 +From: David Tardon +Date: Wed, 19 Jun 2013 12:38:43 +0200 +Subject: [PATCH] fix rtf import on big endian + +(cherry picked from commit fa2363344cbf85af17a80c4757b226ab43391af6) + +Change-Id: Ia9f589752176849f7f6700483e933767e509edf3 +Signed-off-by: David Tardon +--- + writerfilter/source/rtftok/rtffly.hxx | 42 +++++++++++++---------------------- + 1 file changed, 15 insertions(+), 27 deletions(-) + +diff --git a/writerfilter/source/rtftok/rtffly.hxx b/writerfilter/source/rtftok/rtffly.hxx +index ab68cfc..d07a8ac 100644 +--- a/writerfilter/source/rtftok/rtffly.hxx ++++ b/writerfilter/source/rtftok/rtffly.hxx +@@ -17,18 +17,18 @@ namespace writerfilter { + { + public: + RTFVertOrient(sal_uInt16 nValue) ++ : nVal(nValue) + { +- Value.nVal = nValue; + } + + sal_uInt16 GetOrient() const + { +- return Value.Flags.nOrient; ++ return OSL_LONIBBLE(OSL_LOBYTE(nVal)); + } + + sal_uInt16 GetRelation() const + { +- return Value.Flags.nRelOrient; ++ return OSL_HINIBBLE(OSL_LOBYTE(nVal)); + } + + sal_Int32 GetAlign() const +@@ -71,19 +71,11 @@ namespace writerfilter { + + sal_uInt16 GetValue() const + { +- return Value.nVal; ++ return nVal; + } + + private: +- union +- { +- struct +- { +- sal_uInt16 nOrient : 4; +- sal_uInt16 nRelOrient : 4; +- } Flags; +- sal_uInt16 nVal; +- } Value; ++ sal_uInt16 nVal; + }; + + /// Stores the horizontal orientation properties of an RTF fly frame. +@@ -91,18 +83,23 @@ namespace writerfilter { + { + public: + RTFHoriOrient(sal_uInt16 nValue) ++ : nVal(nValue) + { +- Value.nVal = nValue; + } + + sal_uInt16 GetOrient() const + { +- return Value.Flags.nOrient; ++ return OSL_LONIBBLE(OSL_LOBYTE(nVal)); + } + + sal_uInt16 GetRelation() const + { +- return Value.Flags.nRelOrient; ++ return OSL_LONIBBLE(OSL_HIBYTE(nVal)); ++ } ++ ++ sal_uInt16 GetRelAnchor() const ++ { ++ return OSL_HINIBBLE(OSL_LOBYTE(nVal)); + } + + sal_Int32 GetAlign() const +@@ -151,20 +148,11 @@ namespace writerfilter { + + sal_uInt16 GetValue() const + { +- return Value.nVal; ++ return nVal; + } + + private: +- union +- { +- struct +- { +- sal_uInt16 nOrient : 4; +- sal_uInt16 nRelAnchor : 4; +- sal_uInt16 nRelOrient : 4; +- } Flags; +- sal_uInt16 nVal; +- } Value; ++ sal_uInt16 nVal; + }; + } // namespace rtftok + } // namespace writerfilter +-- +1.8.2.1 + diff --git a/libreoffice.spec b/libreoffice.spec index 29eaf5e..165cadc 100644 --- a/libreoffice.spec +++ b/libreoffice.spec @@ -234,8 +234,6 @@ Patch4: openoffice.org-3.1.0.oooXXXXX.solenv.allowmissing.patch Patch5: openoffice.org-3.1.0.ooo101274.opening-a-directory.patch Patch6: openoffice.org-3.1.1.ooo105784.vcl.sniffscriptforsubs.patch Patch7: libreoffice-installfix.patch -#to-do, fix this on bigendian platforms -Patch8: 0001-disable-sw-import-export-tests.patch %if 0%{?rhel} && 0%{?rhel} < 7 Patch9: libreoffice-rhel6gcj.patch Patch10: libreoffice-rhel6poppler.patch @@ -250,6 +248,7 @@ Patch17: 0001-Resolves-rhbz-968892-force-render-full-grapheme-with.patch Patch18: 0001-Related-rhbz-968892-discard-impossible-languages-for.patch Patch19: 0002-Related-rhbz-968892-discard-impossible-languages-for.patch Patch20: 0001-buildfix.patch +Patch21: 0001-fix-rtf-import-on-big-endian.patch %define instdir %{_libdir} %define baseinstdir %{instdir}/libreoffice @@ -974,7 +973,6 @@ mv -f redhat.soc extras/source/palettes/standard.soc %patch5 -p1 -b .ooo101274.opening-a-directory.patch # %%patch6 -p1 -b .ooo105784.vcl.sniffscriptforsubs.patch %patch7 -p1 -b .libreoffice-installfix.patch -%patch8 -p1 -b .disable-failing-check.patch %if 0%{?rhel} && 0%{?rhel} < 7 %patch9 -p1 -b .rhel6gcj.patch %patch10 -p1 -b .rhel6poppler.patch @@ -989,6 +987,7 @@ mv -f redhat.soc extras/source/palettes/standard.soc %patch18 -p1 -b .rhbz-968892-discard-impossible-languages-for.patch %patch19 -p1 -b .rhbz-968892-discard-impossible-languages-for.patch %patch20 -p1 -b .buildfix.patch +%patch21 -p1 -b .fix-rtf-import-on-big-endian.patch # TODO: check this # these are horribly incomplete--empty translations and copied english @@ -2060,6 +2059,7 @@ update-desktop-database %{_datadir}/applications &> /dev/null || : %changelog * Wed Jun 19 2013 David Tardon - 1:4.1.0.1-1 - 4.1.0 rc1 +- Related: rhbz#971321 failing tests on ppc and s390 * Sun Jun 16 2013 David Tardon - 1:4.1.0.0-9.beta2 - Resolves: rhbz#971321 failing tests on ppc and s390